请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
123.怎样批量进行组织结构的本地化?
Q+ p; x) x0 o8 M7 y1 w6 K6 B O" T3 J
问题:
5 P" g$ W$ A* b8 P& W通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管
. @" Y& Z) A9 T/ O; m/ m
) N5 `/ o6 g5 }7 V/ ~理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大, 8 q4 A+ h0 r; k1 h8 M
并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法?
$ G+ N7 w9 C5 G软、硬件环境:
. G2 @% K! M% f6 h平台 : na
2 V* K, K& N8 u }+ a1 @+ s ]' T( e' R
OS : n/a
1 s/ K! Z3 Y8 k4 O, ^/ S0 OOS版本: n/a $ V$ l2 O6 s+ ?, H2 M z: C
9 B) Q0 ?8 o, o应用: 组织
; b5 f! z, ^: @版本: V10.1.0及以上
& |% m! a6 k, N3 w
6 [# ~+ X' {9 {/ I. k" n解决方法: 1 x, P) g. ~' n0 }1 v8 C
以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
8 C' @* ^# `; h$ P其它语言类似。 1 D3 w8 [: u7 z; _. X
, ]2 r9 I' i6 @( d
1.使用下面的语句创建一些组织结构,组和角色
; o, @% o& w* |- ~: B5 Q请把正确的infodba密码提供给-p参数。
7 ?( [7 `. A \2 `" f
5 z- E1 p, H7 H9 D0 s. o1 J& D) Hmake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
1 }7 o( r2 F5 ?% O, Bmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01
; w4 L9 f/ y1 @make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 $ F% _& O& b) U: o6 V) a
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02 ( _. Q0 h d9 R% e+ O [1 S) `
make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
" t9 @, N% L% K1 I3 v9 u( [make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02 + g3 J: H7 o7 ]9 v6 N- r. h
make_user -u=infodba -p=1234567890 -g=dba -role=Tester
2 u0 b/ q) z+ J% ]( imake_user -u=infodba -p=1234567890 -g=dba -role=QAEng : e* I) [: l% z7 L
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng) j. D) z- O( m4 z8 i( w$ N0 d
2登录进入TC,查看组织结构% u. G7 f+ g. H' Z2 y4 w
: |8 ]& Y4 o" J# Y5 `
]' T- ?* X* ^5 T6 n3. 在TCDOS窗口中使用下面的命令导出组和角色
, p3 {4 w9 K6 U: N+ I
c) f- D+ d/ R3 d0 `导出的文件格式是XML文件。 8 \/ W# V8 f2 x1 k
& ?" L+ P3 C, C1 J |' C$ Z) F
请把正确的infodba密码提供给-p参数。 / s% F! P/ t6 M. }
$ o( i7 a; L: _9 I8 ]4 D
+ {: I3 ]# g3 {4.本地化
% }; y( ~- ?; `, \
4 M3 v: `8 J! _: Z$ @" w复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, 5 E8 _$ F6 z, C* [
0 y4 Q8 b% I. }, G9 Q2 V
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
/ f: v4 @1 {4 T' H) T+ G
7 b0 ~1 m7 A# \, D本地化的目标语言代码。! R" b; S$ h9 Q* T+ X
下面是目标语言的列表
4 [( }( U, W( P" c% m; o1 b* E a9 e5 ~( o8 L' l4 }) I
目标语言代码目标语言
" b/ B2 l: t* g* O" P4 V8 s1 g. x& Q: n- \% j* G; d
cs_CZ 捷克语 $ R, N q8 y: Y4 ?* A7 I/ j2 V! i
; s& m5 } L9 y1 C; T/ e+ ~de_DE 德语
! T/ a% i3 i% l- Y
, ]4 b7 N. q* }" T8 h9 Len_US 英语
+ R+ d* H# @8 b* Y' [3 E( G5 ?% j: O
es_ES 西班牙语 : ]3 _6 y, f/ L k" v. R! b
5 }$ D9 m- H9 u6 Efr_FR 法语 , q/ |; j* ]* F
! U4 w' a: h! Tit_IT 意大利语
1 Q- X/ M7 S, b( m/ ]* S2 }0 n/ H7 g o9 r
ja_JP 日语 1 n1 c2 q4 e- L
f! X5 Z9 Z5 [2 D" U/ p; O% Xko_KR 韩语 3 X& E! S1 V+ V3 h" Z
K+ F5 F7 G `$ x( f8 y( {pl_PL 波兰语 7 @: [! F6 E/ I" p2 x t
- e) P) A$ }) B1 rpt_BR 巴西葡萄牙语 ( R& v& F( |1 q( l
+ R+ t5 s# A/ c R A4 V Rru_RU 俄语 ! g8 f1 [' ~- p2 p6 F9 Y
0 y4 C/ _3 I K6 O: G/ Dzh_CN 简体中文
: s9 j7 s% k, q- O3 N8 q4 V8 c# g' G% X. V8 i0 l
zh_TW 繁体中文 3 _" N+ \- U* { f/ C
& ?* P9 o/ i# K# f7 q& D
注: 5 @3 Q/ _. P% b
6 W# {2 B/ M! Z根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后
! l1 z R' L8 f& F8 l( D1 y* e; J$ S0 U1 T0 z, [! K/ q2 _7 h
的对应名称在下面的属性对之间进行修改。
$ m2 |7 x. v* n! G3 A R5 W" ?: ?0 ^- h# P' q5 b* {
# {8 F8 k3 [. @1 d" M<LocalizedValue>
, l' c: \+ y* \</LocalizedValue> 1 v* T i8 V, _' a
注:
% S# \" J9 m2 R
' H- {7 I0 S. d w5 [8 ]3 |% U. M如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。
& V# \/ H o! I; Q% V Z. ], Q+ j' _; U1 z
对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对
$ A( G" A$ N$ p; i& B8 v( O! X8 Q5 _
里面的:
/ M( C4 p/ G$ Z+ W& u( j$ ^8 ~/ U& K+ j
4 |: J6 u. {4 k/ ~9 w$ ~7 A
<ObjectInstance> / E1 S, `1 Y2 Q0 @
</ObjectInstance> 5 Z3 R& C* \+ L/ z, z
请注意保证XML格式的正确性。7 v4 ~7 ~, q( w+ B! C9 j1 y! ?
组的本地化修改的例子:
' A) Q& d1 b' z7 s$ H3 D. h! b7 l* y; o4 I B
/ C2 Z( t9 m7 |& e
/ S5 \3 Y5 @- B, Q5 l# ~
<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB">
9 `+ A0 K8 u% A6 N7 h<Property propertyName="name" masterLocale="en_US"> $ q. @) D* [- |. }! W- w L
<Value index="0"> 4 H% h2 H5 n0 U* ^: B$ t( x4 j, x* k
<MasterValue>
- `! e/ Z7 e" a0 @5 gdba ) T- G6 {! z9 B Q7 N% Q* ?( n% [
</MasterValue> 9 m$ C; G3 E! f
<LocalizedValue>
# \ w! f( _' c% ~8 \dba
% l% J5 V+ F% i2 \, K# d0 O</LocalizedValue> , A: G# S$ H9 `. R: i8 d7 H- C
</Value>
- L( _1 B/ F. {8 a8 H w- O</Property>
+ ^6 ?( q Y$ j+ a' C" e; |& r8 r</ObjectInstance> 8 n5 G2 @0 N' y6 e9 y5 t
<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
# n% {/ ?, P2 t7 F* q! @9 b/ E<Property propertyName="name" masterLocale="en_US">
' W2 d3 z# g0 e<Value index="0">
- A2 U7 x5 N7 ~ o) {& J B<MasterValue> & W; y! e: D9 b
GF02
! }, t- m5 a; a5 ~7 V7 z2 ~' m</MasterValue>
; J+ D4 Z" ]2 g3 E<LocalizedValue> ! P" \6 r* q/ u# w9 g! l. @5 B
# @$ m7 A3 v6 P* k2 s8 p: o工艺02 : }' E% k$ M: u1 X7 ~$ `/ O
6 u/ I* V% u4 }5 R1 j8 g6 z+ T' U Q4 ^, U3 I# j- F
</LocalizedValue>
" C9 G/ s" _# K2 q* E</Value>
$ O& M1 \- q# x! D `5 \, z1 \</Property>
' [. K# K+ y @( ~$ D</ObjectInstance>
1 q. F2 K2 S! s: v. w. U, }1 s$ c$ P; T( }4 s6 n) ]+ s+ |
角色的本地化修改的例子: & U6 r6 g5 M' k1 M6 \4 _
" a$ }) L2 o7 K% ~ 7 ?' j: f& ~/ L+ F& N( P& k
5 E. @0 o& k1 H7 F
# k9 H+ o1 G: g+ [( Z
2 r; F: p2 J. w<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> ( ~$ w6 k5 [& ^5 ~) K
<Property propertyName="role_name" masterLocale="en_US"> , z1 r0 A" y# D! v- r
<Value index="0">
; ^% m6 r, k. B- H0 u- A<MasterValue>
$ o. B8 p: n4 h1 o- y7 sDBA
+ u% i8 a/ F7 v$ b3 X</MasterValue>
7 K7 L k5 y" E2 Z+ q+ ~# ]<LocalizedValue> - n. s! e" D" l& L+ W
DBA
. C( |) n' B! C Q( y D( o</LocalizedValue> . K" b8 S- e# ~$ O' Q
</Value>
% |. ~. c9 g3 K6 s</Property>
" z0 O5 ~. Q4 m. y- o</ObjectInstance> ; _/ A$ Q, u9 _ @* f1 |
<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB"> 2 R5 F% d% V7 ^- j2 l6 l
<Property propertyName="role_name" masterLocale="en_US"> # H8 N, [; q+ |* q" w t
<Value index="0">
5 D& L) d* M4 }7 R+ J9 n# v<MasterValue>
2 |" X/ @0 I, e4 g+ Z: kTester & h1 Q$ n- T$ t. B
</MasterValue>
) j x# d) S+ Q2 h: X+ D<LocalizedValue> % N- C. K4 E) e2 A s& D
& l8 k+ y9 C6 v" j k. v测试员
# [# ?( |3 L# E4 |+ Q8 |' Y+ S6 D& D5 k/ y) ~8 R! B" h
' Y: b( L' }8 `. z4 {6 a* r/ A4 T) q& m8 U7 K3 a& p0 \5 B
</LocalizedValue> 7 y {3 ]0 F: O4 x' ]
</Value>
4 h2 m0 b p' k. H! H</Property>
- F( N O" ]- K& O* k" f2 m; X</ObjectInstance>
( o+ \ S- D2 t+ r" `: q$ O# e' L/ k
+ k5 V5 j- u0 ?, T9 {+ Y: R
( a0 q8 Z" S" v# t2 ?9 [
; r1 p4 V) Z! S( @; E: d
^( T* e5 \ T3 k
1 L* H) E3 i' {. b" [. g/ h$ s% ?* Y' d
# I% M' e2 M2 x. C L/ `& y
保存文件. 2 u& s: D! H, ]' J) [
( _: K7 ?, ~8 C/ w" q6 [8 E" l0 c/ m
5.导入本地化 ! u5 q$ G3 H* r) s; u2 S# E
/ q+ S# W' W2 ?8 i& N y0 a" @/ l在 TCDOS窗口中进行导入 ! E3 Y3 B$ L3 t/ v9 E4 l
+ i& w c9 c& e7 D8 l* D: e' N4 A
. v N* Z- L5 C3 H. m# A( g3 a* N+ _请把正确的infodba密码提供给-p参数。
$ Q9 N/ t" }# d* R% ?$ }6检查 0 q1 D- y' C7 u- I; c
1 Q+ x5 K6 {/ Y& m9 O4 p
用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称2 A* e0 x h2 |* t! u. ?5 J
# c0 o! q3 d0 l6 ]
/ z; M& W" n' `% i/ V7 Q& V: Z, Y6 q# V9 ?( [# o% z
, X8 k; Y3 o8 m/ R1 {
|