Você está na página 1de 17

Unificao de Banco de Dados

Objetivos
Esta tcnica tem por objetivos esclarecer os procedimentos necessrios para utilizar o aplicativo Datasul-EMS
diminuindo-se o nmero de bancos atravs do processo de unificao de bancos.
oje! encontramos al"umas dificuldades como o e#cesso de bancos! o $ue acaba acarretando um nmero
elevado de processos e mem%ria em ambientes internos e clientes. &emos tambm problemas com 'D()! onde s%
poss*vel conectar um banco por vez. ' objetivo deste trabal+o! viabilizar a reduo de bancos ,ro"ress! o $ue diminui
os processos no servidor de bancos! mel+ora a performance "eral! facilita a administrao do ambiente e!
conse$uentemente! aumenta a satisfao dos clientes.
-os ltimos anos o produto E., Datasul cresceu bastante em funcionalidades e para permitir a modularizao e
fle#ibilidade no desenvolvimento e manuteno do produto! o nmero de (ancos de Dados do produto tambm cresceu.
,ara se ter uma idia! a release EMS /.0/ possui 12 bancos 3mais 4 bancos +ist%ricos5 e a release comercial atual! $ue a
EMS /.06! possui /2 bancos 3mais 7 bancos +ist%ricos5.
8 para os clientes do EMS /.0/ essa $uantidade de bancos causou um impacto ne"ativo na performance "eral
do ambiente! devido a $uantidade de processos no servidor de bancos! principalmente para clientes com um par$ue
tecnol%"ico restrito.
)om a instalao do EMS /.0/ em banco de dados 'racle sur"iu uma dificuldade adicional9 como a release
EMS /.0/ possui 12 bancos! cada usurio EMS /.0/ abre 12 sess:es 'racle. ;sto acarretou dificuldades nas $uest:es de
licenciamento do banco de dados 'racle! devido ao custo de cada licena do 'racle. ,ara solucionar este problema no
'racle! temos tambm o processo de <nificao de Sc+ema older.
's clientes $ue esto instalando a release EMS /.06 $ue possuem /2 bancos de dados 3mais 7 para $uem utiliza
(ancos ist%ricos5! esto encontrando dificuldades de performance devido a "rande $uantidade de mem%ria .=M
e#i"ida para os processos servidores dos bancos de dados. ,ara estes clientes! imprescind*vel uma soluo $ue permita
uma utilizao mais racional dos recursos dispon*veis.
;nternamente na Datasul! a $uantidade de bancos de dados do produto associada a $uantidade de releases ativas e
a $uantidade de ambientes necessrios! seja para desenvolvimento! suporte e manuteno! $ualit> assurance e tambm
os idiomas e S?D(S suportados! est criando uma situao $ue e#i"e cada vez mais recursos de +ard@are. Desta forma!
uma soluo $ue permita reduzir o nmero de bancos e mel+orar o desempen+o do sistema! atende tanto as necessidades
dos clientes como as necessidades internas da Datasul.
= Datasul encontrou uma soluo! $ue permite ao cliente! $ue assim o desejar! unificar as suas bases de dados
para mel+orar o desempen+o do sistema. = soluo encontrada foi resultado de um estudo realizado pela Datasul
&ecnolo"ia! com o objetivo inicial de viabilizar a unificao de sc+ema-+older para 'racle 3consultar documento de
<nificao de (anco 'racle5! diminuindo o nmero de licenas necessrias para os clientes $ue usam 'racle. Este
estudo tambm viabilizou a reduo de bancos ,ro"ress para clientes $ue usam ,ro"ress puro.
1.1Como funcionar este processo?
= premissa bsica do processo de unificao de bancos de causar o menor impacto poss*vel ao cliente e no
alterar o produto padro. Da forma como +oje e#pedido! o mesmo produto padro deve e#ecutar tanto em clientes $ue
unificaram as suas bases de dados como em clientes $ue mantm as bases individualmente separadas.
' produto Datasul compilado e e#pedido no formato ... Em tempo de compilao dos pro"ramas so
"ravadas no .r as se"uintes informa:es9
Data ltima atualizao: 18/03/2010 !ina: 1
-ome l%"ico dos bancos de dados 3parAmetro Bld do ar$uivo de parAmetros5
-ome da &abela
).) da &abela e Cndice
' produto somente ser e#ecutado sem erros no ambiente do cliente se! em tempo de e#ecuo! os bancos
conectados possu*rem os mesmos nomes l%"icos 3-ld5 e ).) dos bancos utilizados em tempo de compilao.
E#emplo9
Supon+a um .r do produto padro 3compilado com os bancos separados5.
-este .r! temos o comando9 Find first mgind.param-global.
-o produto padro! este comando funciona normalmente por$ue o banco mgind est conectado.
;ma"ine! a"ora! um ambiente onde unificaram-se todos os bancos do produto num nico banco de dados c+amado
mg.
Se e#ecutarmos o mesmo .r conectando somente o banco unificado c+amado mg 3$ue conten+a a tabela param-
"lobal5 ocorre a mensa"em de erro DBanco mguni no conectadoE.
,ara resolver este problema! pode-se en"anar o Dnome l%"icoE "ravado no .r usando o comando D)reate =liasE.
,ara e#ecutar o .r ori"inal sem erros deve-se fazer o se"uinte9
E#ecutar primeiro um pro"rama especial com o comando9 CREATE ALIAS mgind FOR DATABASE mg NO-
ERROR.
De a"ora em diante! o =lias mgind vai funcionar como sendo um nome l%"ico e o .r conse"uir interpretar o
comando Find first mgind.param-global. =ssim! a mensa"em de erro citada acima no ocorrer mais.
' recurso $ue permite a criao de D=liasE para os nomes l%"icos dos bancos de dados! a caracter*stica $ue
permite a unificao dos bancos f*sicos. Mesmo $ue fisicamente e#ista um banco nico! os pro"ramas .r funcionam
como se cada banco de dados l%"ico estivesse separado.
= unificao ser permitida de al"umas formas pr-definidas 3estruturas de unificao5 e +omolo"adas pela
D=&=S<F! de acordo com as caracter*sticas do cliente e dos produtos por ele ad$uiridos. ' produto padro no ser
alterado e continuar sendo e#pedido da forma como feito +oje. ' mesmo ponto .r funcionar sem altera:es para os
clientes $ue mantm os bancos separados! para a$ueles $ue unificaram com a estrutura =! para a$ueles clientes $ue
unificaram com a estrutura (! e assim por diante.
)omo ser e#plicado em detal+es mais adiante! o cliente $ue unificar os bancos de dados! ter $ue customizar o
seu ambiente para $ue sejam e#ecutados os comandos D)reate =liasE antes da e#ecuo de $ual$uer .r do produto
padro.
Aten!o" Este pro#esso de $nifi#a!o pode o#asionar alg$ns impa#tos ao #liente. %e&a item '. Impa#tos deste
man$al.
Vantagens
2.1 "tilizao #e $em%ria
Guanto menos bancos e#istirem! menor o nmero de processos nos servidores de bancos e menor ser a
$uantidade de mem%ria .=M necessria.
Supon+a um cliente $ue ten+a a se"uinte confi"urao de produtos e bancos de dados9 utiliza a release EMS
/.06 com (' bancos e ) bancos +ist%ricos! a release EMS 2.06 com * bancos e ten+a um produto Espec*fico com '
bancos. So ') bancos de dados. )omo o produto ainda est em desenvolvimento! ele precisa manter dois ambientes
separados9 um ambiente de desenvolvimento e outro de produo. ;sso duplica o numero de bancos 3+( bancos5.
Se este cliente unificar os bancos com a se"uinte estrutura9 trHs bancos para o EMS /.06 3um para os cadastros!
um para os movimentos e um para os +ist%ricos5! um banco para o EMS 2 e um banco para os Espec*ficos! considerando
Data ltima atualizao: 18/03/2010 !ina: 2
$ue o cliente ten+a dois ambientes 3,roduo e &estes5! ap%s a unificao ele ter dez 3105 bancos de dados! obtendo
assim uma economia de recursos! conforme especificado no $uadro abai#o. Ieja $uadro comparativo! antes e depois da
unificao! considerando $ue o cliente ten+a /60 usurios utilizando o sistema.
At$almente Ap,s -nifi#a!o E#onomia de re#$rsos
N.mero de ban#os J/ 10 7/ (ancos de Dados
N.mero de pro#essos
Ser/ers 0-1n *23
/KK0 600 /6K0 ,rocessos
1em,ria para ser/ers
3/27 Lb pMproc.5
J/0Mb 100Mb )(21b de 1em,ria
2.2 &ancos #e #a#os no utiliza#os pelo Cliente
-a ar$uitetura atual do produto! fica dif*cil prever $uais bancos no so acessados e podem ficar desconectados.
Mesmo $ue o cliente utilize somente al"uns m%dulos do produto! ter $ue conectar todos os bancos! pois o produto no
est componentizado 3o processo de componentizao do produto est previsto para as releases futuras5. Esses bancos!
aparentemente no utilizados! so acessados internamente pelos pro"ramas! como! por e#emplo! pelo pro"rama de
param-"lobal! e estes pro"ramas cancelaro a e#ecuo se os mesmos no estiverem conectados.
)om a unificao! estes bancos no utilizados! $ue poderiam ficar desconectados! dei#aro de ser um problema
para o cliente! pois estaro embutidos no banco unificado e no consumiro nen+um recurso adicional. = unificao de
bases ir sanar uma das dvidas do cliente $ue diz respeito N perda de performance do produto pelo fato de serem
conectados bancos desnecessrios. ' cliente pode es$uecer $ue tem estes bancos de dados.
2.3 'otinas #e (#ministrao #e &anco #e Da#os
)om a reduo do nmero de bancos! +aver uma simplificao si"nificativa nas rotinas de administrao do
ambiente do cliente. Sero simplificados a manuteno dos .pf! scripts! rotinas para carre"ar e derrubar os servios!
desconectar usurios do sistema! realizao de bacOups! etc.
3. Impactos
-este t%pico! descreveremos $uais sero os poss*veis impactos para o cliente $ue optar pela <nificao de suas
bases de dados.
3.1 )er*ios #e "nificao
= unificao dos bancos para as diversas estruturas de unificao poss*veis no far parte do produto padro!
ser um servio vendido aos clientes. ' cliente dever dispor de um tempo para e#ecuo da converso de unificao e
customizao do ambiente $ue corri"e os scripts! .pf! "era os pro"ramas de D)reate aliasE! etc.
3.2 'otinas D&(
3.2.1 ar+metro ,$r9 -os testes realizados no processo de unificao de bancos! observou-se um
estouro do parAmetro BMr na importao de dados devido ao nmero de tabelas do banco unificado. 's
processos de dump e load devem ser divididos em duas partes para funcionar.
3.2.2 -a.elas com o mesmo #umpname9 =l"umas tabelas possuem o mesmo DdumpnameE
3Djuros-empresa-crE do banco Dm"admE e Dmovto-c+e$ueE do banco DmovadmE5 e! com isso! o dumpMload
destas tabelas deve ser e#ecutado em separado.
3.3 '/
= unificao apresenta um problema com sess:es .,P $ue fazem cone#o de bancos referenciando nomes
l%"icos $ue no e#istem mais ap%s a unificao. ,ara resolver este problema! foram desenvolvidos dois fontes liberados!
Data ltima atualizao: 18/03/2010 !ina: 3
os $uais devero ser customizados! incluindo os D)reate =liasE necessrios antes de dar run no pro"rama. 's pro"ramas
so os se"uintes9 pro"rama btb42567.p 3plataforma Pindo@s5 e btb4256g.p 3plataforma <ni#5. Estes pro"ramas iro
fazer a c+amada dos pro"ramas btbQ0Kza ou btbQ0Kzb 3o pro"rama vai depender da plataforma $ue o cliente possuir B
btbQ0Kza para -& e btbQ0Kzb para <ni#5 e desta forma o problema ser corri"ido. =inda! necessrio $ue a compilao
de pro"ramas para .,P seja feita em ambientes distribu*dos e no unificados.
3.0 1spec2ficos
= unificao pode apresentar restri:es na compilao de espec*ficos! pois e#istem al"umas tabelas do
Roundation com o mesmo nome tanto no banco de dados do produto EMS/ $uanto no banco de dados do produto EMS2
e isso causa um erro durante a compilao. ,ara solucionar esse problema! necessrio $ue os pro"ramas sejam
compilados com suas bases distribu*das 3no unificadas5. =p%s a compilao! os pro"ramas podem ser e#ecutados
normalmente nos ambientes unificados.
Estas bases de dados distribu*das podero ser criadas! para efeitos de desenvolvimento! partindo-se das
defini:es e#istentes na m*dia de instalao do produto e aplicando-se os deltas liberados nos pacotes de atualiza:es
subse$Sentes. Essas bases no precisam conter dados! apenas as defini:es das tabelas e dicionrio para a compilao
dos pro"ramas.
3.3 4imites 5nternos #o ro!ress
)om a unificao de vrios bancos de dados em um nico "rande banco! o nmero de objetos do dicionrio de
dados 3tabelas! *ndices! se$SHncias e atributos5 cresce bastante! mas se"undo os limites documentados do ,ro"ress e as
proje:es de crescimento do nosso dicionrio de dados! estamos muito lon"e de atin"ir os limites do ,ro"ress.
E#iste uma restrio de endereamento de mem%ria nos produtos ,ro"ress 4/ bits $ue nos leva a no
recomendar a unificao de uma $uantidade muito "rande de bancos num s%! j $ue a $uantidade de mem%ria $ue poder
ser alocada para o banco ser limitada! mesmo $ue o servidor ten+a mem%ria .=M dispon*vel.
3.6 roce#imentos #e Con*erso #e releases
's procedimentos de converso da Datasul 3mi"rao de uma release anterior para uma nova5 devero ser
alterados para contemplar a e#istHncia de bancos unificados. ' cliente pode ter bancos unificados na release anterior e
$uer mi"rar de release 3mantendo os bancos unificados5! ou o cliente ainda no tem os bancos unificados e $uer fazer a
mi"rao para a nova release e ao mesmo tempo unificar os bancos.
3.7 roce#imento #e aplicao #e #elta #e #icionrio
's procedimentos de envio de delta de dicionrio aos clientes com o objetivo de atualizar o dicionrio de dados
no campo! devem prever a situao dos clientes com bancos unificados.
3.8 'etorno #a unificao
-a +ip%tese do cliente ter feito a unificao dos bancos e! por um motivo $ual$uer! $uiser voltar para a situao
anterior com os bancos individualmente separados 3,roduto ,adro5 ele dever contratar um novo servio de converso
$ue recriar o ambiente ori"inal. ' ideal $ue o cliente faa um bacOup de seu ambiente antes do processo de unificao
para evitar maiores contratempos caso $ueira retornar para o produto padro.
4 Estruturas de Unifcao Possveis
's produtos Datasul possibilitam vrias confi"ura:es de bancos de dados e este documento cobre as principais
confi"ura:es $ue os clientes podem utilizar.
Data ltima atualizao: 18/03/2010 !ina: 0
,ara facilitar o entendimento dos diversos bancos de dados l%"icos citados nas estruturas de unificao! se"ue
uma tabela com os bancos de dados dos produtos Datasul com suas finalidades.
8rod$to Datas$l E1S("
Logi#al Name Sigla Des#ri!o
m"adm =D =dministrativo
m"adt =< =udit &rail
m"aps =, =dvanced ,lannin" S>stem
m"ce# )T )omrcio e#terior
m"cld )F )oletor de Dados
m"dis D; Distribuio
m"fis R; Riscal
m"ind ;- ;ndustrial
m"inv ;I ;nvestimentos
m"mf" MR )+o de Rbrica
m"mnt M- Manuteno ;ndustrial
m"mp M, Multi-,lanta
m"mrp M. M.,
m"rac .) )omiss:es .epresentantes
m"scm S) Suppl> )+ain Mana"ement
m"sop S' Screen 'ptmizer
m"sor S. &emporrio - Screen 'ptmizer .epositor>
m"tmp &M &emporrio templates
m"uni <- <niversal
m"ven IE Iendor
lcar" =.? Focalizao =r"entina
movadm =D =dministrativo - Movimentos
movdis D; Distribuio - Movimentos
movfis R; Riscal - Movimentos
movind ;- ;ndustrial - Movimentos
movmf" MR )+o de Rbrica - Movimentos
movmnt M- Manuteno ;ndustrial
movrac .) )omiss:es .epresentantes - Movimentos
neo"rid -E' -eo"rid E-collaboration
@movdis PD &emporrio Distribuio
eai eai Rila de ;nte"rao E=;
8rod$to Datas$l E1S9"
Logi#al Name Sigla Des#ri!o
emsbas (=S &abelas (sicas
emsfin R;- )adastros Rinanceiros
emsuni <-; &abelas <niversais
emsedi ED; ED;
emsnam -=M Focalizao E<=
emsven IE- Iendor
movfin R;- Movimentos Rinanceiros
eai E=; Rila de ;nte"rao E=;
Data ltima atualizao: 18/03/2010 !ina: 3
8rod$to Datas$l :C19
Logi#al Name Sigla Des#ri!o
dt+rpm" ,M Desenvolvimento 'r"anizacional
dt+rp>c ,U ,a"adoria
dt+rtma &M )ontrole Rre$SHncia
dt+r"st ?& ?esto de ,essoal
dt+rcpj ,8 )ontrole de ,rojetos
m"uni <- <niversal
eai E=; Rila de ;nte"rao E=;
8rod$to ;est!o de 8lanos <.229
Logi#al Name Sigla Des#ri!o
Srcad"er )adastros ?erais
Srmovben Movimentao de (eneficirios
Srmovcon Movimentao de )ontas
Srmovfi1 Movimentao Rinanceira ;
Srmovfin Movimentao Rinanceira
Sr@eb )adastrosMMovimentaco PE(
Sero apresentadas! atravs da fi"ura a se"uir! as estruturas de unificao poss*veis para os produtos Datasul.
'bserve nesta fi"ura $uais so os bancos $ue podem ser unificados e $uais a$ueles $ue devem ser mantidos separados.
'bserve tambm! dentre os bancos $ue podem ser unificados! $uais so os a"rupamentos poss*veis.
= se"uir vemos al"umas considera:es sobre as estruturas apresentadas nesta fi"ura9
1ono-empresa9 Esta estrutura ade$uada Ns empresas $ue controlam somente uma empresa.
1$lti-empresa9 Devido N caracter*stica do Datasul-EMS! somente os bancos administrativos contemplam
a estrutura de multi-empresa e a capacidade de se armazenar dados de vrias empresas num mesmo banco.
Desta forma! os clientes $ue desejam controlar vrias empresas! devem utilizar a soluo de banco multi-
empresa! na $ual os bancos multi-empresa so compartil+ados para todas as empresas e os bancos mono-
empresa so duplicados para cada empresa em espec*fico. =ssim! todas as empresas compartil+aro os
bancos multi-empresa e cada empresa possuir seus bancos mono-empresa. = confi"urao de cone#o aos
bancos necessrios realizada nos ar$uivos de parAmetros de cone#o. -esta confi"urao! a $uantidade de
bancos ir depender da $uantidade de empresas. )ada empresa ter um atal+o de cone#o diferente.
Ban#os 7ist,ri#os9 Esta estrutura de bancos permite $ue dados +ist%ricos sejam armazenados em bases
separadas $ue podem ser acessadas a $ual$uer tempo. ,eriodicamente os dados de movimentos so
transferidos dos bancos de movimentao diria para os bancos +ist%ricos! com isto! as bases de
movimentos! $ue so constantemente acessadas nos processos dirios! ficam mais Den#utasE e
conse$Sentemente a performance do sistema mel+ora si"nificativamente. Estes bancos tambm podem ser
utilizados em um ambiente multi-empresa! devendo ser respeitado! conforme a fi"ura a se"uir! $uais bancos
devero ser replicados ou compartil+ados. ,ara o EMS 2! apenas poss*vel utilizar bancos +ist%ricos a
partir da release 2.07.
1$lti-planta9 ' m%dulo multi-planta permite Ns empresas $ue possuem estabelecimentos separados
"eo"raficamente! uma administrao corporativa sobre al"umas reas. V utilizada $uando o cliente possui
o m%dulo Multi-,lanta! sendo utilizado para replicar os dados em vrios sites independentes. )ada planta
ter um atal+o de cone#o diferente.
Ban#os espe#=fi#os9 podem ser criados al"uns bancos para comportar tabelas espec*ficas do cliente! bancos
estes $ue no devero ser unificados junto com as bases padr:es do produto. Rica a car"o do cliente
escol+er a mel+or forma de unificar as suas bases espec*ficas! desde $ue estes bancos fi$uem separados dos
bancos padr:es Datasul.
Data ltima atualizao: 18/03/2010 !ina: 6
S#reenOptimi6er9 conforme detal+ado na fi"ura a se"uir! o banco mgsop pode ser unificado juntamente
com os bancos de cadastros do produto! porm o banco mgsor no pode ser unificado! dever ficar
separado em uma base distinta.
Lo#ali6a!o9 bancos utilizados pelo produto por clientes fora do (rasil.
EAI9 este banco no pode ser unificado.
Datas$l Transportes 0T1S39 este produto possui trHs bancos9 m"trp! movtrp e comtrp 3todos mono-
empresa5! com sua estrutura de unificao descrita na fi"ura a se"uir 3os trHs bancos podem ser unificados
num s% banco5.
Ban#o 1;A8S9 dispon*vel no EMS / a partir da release /.07(.
Ban#o 1;ADT" o banco mgadt mono-empresa e no pode ser unificado! dever ficar separado em uma
base distinta.
Ban#o 1;18" este banco no pode ser unificado.
;est!o de 8lanos <.229 's bancos desse produto so mono-empresa e podem ser unificados! conforme
mostra a fi"ura a se"uir.
DBR9 's bancos desse produto so mono-empresa e podem ser unificados com os demais bancos mono-
empresa do EMS/.
Frotas9 's bancos desse produto 3m"fro e movfro5 so multi-empresa e podem ser unificados com os
demais bancos multi-empresa do EMS/.
Considera>es para o prod$to DATAS-L-<2 em diante"
Ban#o E1SDCA 3)omponentes =cess%rios Datasul59 Esse banco de dados mono-empresa e pode ser
unificado junto com os demais bancos de cadastros do produto EMS/.
Ban#os E1SDE%? 8A@ROLL e FINANCE" So bancos de dados acessados via 8D() via porta SGF
3inclusive podem estar outro S?(D5. A re#omenda!o A B$e n!o se&am $nifi#ados.
Ban#os do T1S 0mgtrp? mo/trp e #omtrp3" = partir da verso D=&=S<F-11 esses bancos de dados
podem ser unificados junto com os bancos do EMS/ 3+aviam tabelas com o mesmo nome $ue foram
renomeadas5.
Obs" )ontinua a restrio de no unificar os bancos do produto EMS/ junto com os bancos do EMS2 ou junto
com os bancos do )M! pois e#istem tabelas com a mesma nomenclatura.
Data ltima atualizao: 18/03/2010 !ina: 7
!ina: 8
mgcex mgcld mgdis
mgind mgmfg mgmnt
mgmrp mgscm mgfis
mgaps mgdbr
mgadm mginv
mguni mgven
mgrac mgtmp
mgsop mgfro
mgCadMult mgCadEmpA
movdis movind
movmfg movmnt
wmovdis movfis
movdbr
movadm
movrac
movfro
mgMovMult
mgMovEmpA
mgMov
B
C
B
C
hisdis hisvind
hismfg hismnt
hisfis
mg:isEmpA
hisadm
hisrac
mgHisMult
B
C
mgHis
mgmp
mgMpA
B C
mgMp
Neogrid
eai
eaiEmpA
B
C
EAI
Estrutura mono-empresa
(ancos multi-empresa compartil+ados
na estrutura multi-empresa
(ancos mono-empresa replicados na
estrutura multi-empresa
-ome F%"ico no modelo unificado
-ome F%"ico no modelo distribu*do =F;=S
Especficos
mgCad
Neogrid Especficos
E1S9
emsbas emsfin
emsuni emsedi
emsven emsnam
EMS5Cad
Movfin***
EMS5Mov
hisfin
EMS5His
dthrpmg dthrpyc
dthrtma dthrgst
dthrcpj mguni
HCM
EMS5His
HCM
mgSor
mgsor
mgtrp
movtrp
comtrp
TrpEmpA
B
C
TMS
mgadt
mgadtA
B C
mgAdt
Localiza!o
Localizao
***No caso do banco de movimento
do EMS5, enquanto s houver um
banco, o Movfin no necessrio
eecutar a unifica!o sugerida neste
diagrama
srcadger srmovben
srmovcon srmovfi"
srmovfin srweb
!"S#$$
!"S#$$EmpA
(
Dever ser desenvolvido o pro"rama $ue far a criao dos =F;=S para as bases distribu*das! de acordo com o
nome l%"ico utilizado na unificao! conforme a estrutura escol+ida na fi"ura anterior. = se"uir veremos o e#emplo da
criao de alias para o banco mgadm $ue pode ser unificado de duas formas diferentes! conforme a estrutura definida
na fi"ura anterior9
,ara a estrutura mono-empresa9
).E=&E =F;=S m"adm R'. D=&=(=SE m"cad.
,ara a estrutura multi-empresa9
).E=&E =F;=S m"adm R'. D=&=(=SE m"cadmult.
,ara a$uelas bases $ue devero ser replicadas em uma estrutura multi-empresa! dever ser criado um alias para
cada empresa! conforme o e#emplo a se"uir! descrito para o banco mgdis9
,ara a estrutura mono-empresa9
).E=&E =F;=S m"dis R'. D=&=(=SE m"cad.
,ara a estrutura multi-empresa! cada empresa ter seu ar$uivo alias9
,ara a empresa =9
).E=&E =F;=S m"dis R'. D=&=(=SE m"cademp=.
,ara a empresa (9
).E=&E =F;=S m"dis R'. D=&=(=SE m"cademp(.
,ara cada nome l%"ico no modelo distribu*do 3todos os bancos separados5 dever ser criado um alias
apontando para o nome l%"ico no modelo unificado. =p%s a criao dos alias! o pro"rama dever c+amar o menu do
produto! conforme vemos no e#emplo a se"uir! criado para uma estrutura mono-empresa do produto EMS /9
MW (ancos de cadastro WM
).E=&E =F;=S m"adm R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"uni R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"rac R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"inv R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ven R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"tmp R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ce# R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"dis R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mf" R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mrp R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"scm R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"aps R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"cld R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ind R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mnt R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"fis R'. D=&=(=SE m"cad -'-E..'..
MW (ancos de movimento WM
).E=&E =F;=S movadm R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movrac R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movdis R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movmf" R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movind R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movmnt R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movfis R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S @movdis R'. D=&=(=SE m"mov -'-E..'..
MW E#ecuta o menu do sistema WM
.<- menMmenQ0/za.p.
G<;&.
'bserve $ue o pro"rama de menu pode variar de acordo com o produto. ,ortanto! dever ser e#ecutado o
pro"rama confi"urado no parAmetro Bp do atal+o do modelo distribu*do.
Data ltima atualizao: 18/03/2010 !ina: 8
"nificao #e &anco #e Da#os
=p%s criar este pro"rama $ue far a criao dos alias e c+amar o menu! o atal+o do produto dever ser
alterado para c+amar! atravs do parAmetro Bp! o pro"rama criador dos alias ao invs do menu diretamente. &ambm
dever ser alterado o ar$uivo .pf para cone#o dos bancos unificados. = se"uir vemos o e#emplo de um ar$uivo de
cone#o para uma estrutura mono-empresa do EMS /9
-db ems/cad Bld m"cad BS ###### B ###### B- tcp
-db ems/mov Bld m"mov BS ###### B ###### B- tcp
-db ems/neo Bld neo"rid BS ###### B ###### B- tcp
-db ems/eai Bld eai -S ###### B ###### B- tcp
)aso e#istam mais bancos $ue se deseja conectar! basta acrescent-los no ar$uivo .pf. )aso estes bancos
adicionais sejam unificados! devero ser adicionados os comandos ).E=&E =F;=S respectivos no pro"rama de criao
de alias.
Dvidas adicionais ou necessidades de acompanhamento podem ser endereadas pelo canal de consultoria
telefnica, em Tecnologia, Suporte Banco de Dados. O telefone de acesso o (!" #$%$ ! ou o ($$" #$%$ $$%#.
Procedimentos de !onverso para Unifcao
3.1 1scol9er 1strutura oss2*el
&endo em vista os inmeros modelos de ar$uitetura j e#plicados 3multi-planta! bancos +ist%ricos! etc5! deve-se
inicialmente escol+er o modelo ade$uado. ,ara o EMS2 e .! o nico modelo dispon*vel o convencional e! por isto!
e#emplificaremos usando este modelo para o EMS/ tambm. )aso ocorram maiores dvidas! contate consultoria pelo
telefone9 36J5 /101 J66.
3.2 'e:uisitos
,ara proceder com a converso! faz-se necessrio a observao de al"uns detal+es9
3.2.1 Razer um bacOup de bancos! pro"ramas! scripts! etc.
3.2.2 ' espao livre em disco dever ser i"ual ao taman+o dos bancos.
3.2.0 Ficena Guer> .esults para procedimentos de dumpMload. 3observar comple#idade dos
procedimentos para esta licena5.
3.2.0 &empo de e#ecuo.
3.3 r; 'e:uisitos #e con9ecimento
Dada a comple#idade deste procedimento de unificao! faz-se necessrio $ue o profissional $ue ir e#ecut-lo
ten+a os se"uintes con+ecimentosMcertifica:es9
3.3.1 )on+ecer ar$uitetura do produto Datasul 3produto! bancos! diret%rios de pro"ramas! scripts! ar$uivos
de parAmetros! etc.5.
3.3.2 Seja um ,ro"ress Database =dministrator 3D(=5! tendo no m*nimo / anos de e#periHncia na funo!
ou ter certificado de ,ro"ress ,D=.
3.3.3 )aso no seja poss*vel contar com um profissional com este perfil em seu $uadro funcional! bus$ue
apoio junto N sua unidade de distribuio ou contrate a )onsultoria da Datasul &ecnolo"ia pelos
telefones 0TT 6J /101-J600 ou 0TT 6J /101-J666! opo &ecnolo"ia! ou ainda! pelo email
servicosXtecnolo"iaYdatasul.com.br.
3.0 1<portar Defini=es e Da#os na 1strutura (tual
Este processo dever ser e#ecutado se"uindo os se"uintes passos9
3.0.1 'bservar a opo de rcode compat*vel $uando for e#ecutar o dump das defini:es.
=bai#o! se"ue a tela onde dever estar marcada a opo9
INCL-DE 8OSITION for .r CO18ATIBILIT@
Data ltima atualizao: 18/03/2010 !ina: 10
"nificao #e &anco #e Da#os
3.0.2 E#portar defini:es de cada banco.
3.0.3 E#portar dados de cada banco.
3.0.0 E#portar valores das se$SHncias de cada banco.
3.3 5mportar Defini=es e Da#os na no*a 1strutura
Este processo dever ser e#ecutado se"uindo os passos descritos abai#o9
3.3.1 )riar bancos vazios com nome f*sico de acordo com a estrutura escol+ida.
3.3.2 ;mportar todas as defini:es de dados.
3.3.3 ;mportar todos os dados.
3.3.0 ;mportar todos os valores de se$SHncia
3.3.3 )omparar os re"istros antes e depois da converso.
>.s." -os itens 2.4.1! 2.4./ e 2.4.4! deve-se sempre respeitar o banco correto da estrutura escol+ida.
3.6 (lterar .pf? scripts e alias.p conforme a estrutura escol9i#a.
's passos descritos a se"uir devero ser e#ecutados corretamente afim de obter o resultado esperado com o
procedimento de unificao de banco de dados.
3.6.1 Disponibilizar o alias.p.
3.6.2 =lterar scripts de manuteno de bancos 3car"a! derrubada! bacOup! restore5.
3.6.3 =lterar .pf de cone#o clientMserver! .,P! Pebspeed e =,, Server para conectar somente os novos
bancos.
3.6.0 =lterar o parAmetro Bp de clientMserver.
3.6.3 Desenvolver um alias@eb.p para @ebspeed e alterar o parAmetro Bp para este novo pro"rama de
servio Peb.
' pro"rama alias@eb.p tem o contedo muito parecido com o alias.p para ambiente clientMserver porem
ap%s os alias deve c+amar o pro"rama controlador de a"entes. Se"ue um e#emplo9
MW ;n*cio do pro"rama alias@eb.p WM
).E=&E =F;=S m"adm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"cld R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"dis R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ind R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"inv R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mnt R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mf" R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"uni R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"scm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ce# R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"tmp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mrp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ven R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S @movdis R'. D=&=(=SE m" -'-E..'..
Data ltima atualizao: 18/03/2010 !ina: 11
Esta a opo $ue
dever estar marcada
durante a e#ecuo do
dump das defini:es.
"nificao #e &anco #e Da#os
).E=&E =F;=S m"rac R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movadm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movdis R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movind R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movmnt R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movmf" R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movrac R'. D=&=(=SE m" -'-E..'..
MW Deve c+amar o pro"rama $ue controla os a"entes @eb 3@ebMobjectsM@eb-disp.p5 WM
.<- @ebMobjectsM@eb-disp.p.
MW Rim do pro"rama WM
OBSER%ACDO" Deve-se atentar para o fato de $ue o e#emplo acima contempla uma estrutura Mono-Empresa. =ntes
de proceder com a criao do pro"rama alias.p deve-se observar $ual a estrutura de bancos $ue a empresa possui.
=p%s a criao do pro"rama vocH deve alterar a propriedade do servio PE(Speed atravs da ferramenta
,ro"ress E#plorer &ool! para e#ecutar o pro"rama alias@eb.p. Se"ue um e#emplo da tela de alterao do servio9
-ote $ue D-p @ebZobjectsZ@eb-disp.pE foi substitu*do por D-p @ebZobjectsZalias@eb.pE.
3.6.6 ,ara =,, Server! o pro"rama aliasapp.p somente deve criar os alias! no necessitando de e#ecutar
nen+um pro"rama. E#emplo9
MW ;n*cio do pro"rama aliasapp.p WM
DER;-E ;-,<& ,=.=ME&E. data-valor =S )=.=)&E. -'-<-D'.

).E=&E =F;=S m"adm R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"uni R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"rac R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"inv R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ven R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"tmp R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ce# R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"dis R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mf" R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mrp R'. D=&=(=SE m"cad -'-E..'..
Data ltima atualizao: 18/03/2010 !ina: 12
"nificao #e &anco #e Da#os
).E=&E =F;=S m"scm R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"aps R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"cld R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"ind R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"mnt R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S m"fis R'. D=&=(=SE m"cad -'-E..'..
).E=&E =F;=S movadm R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movrac R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movdis R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movmf" R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movind R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movmnt R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S movfis R'. D=&=(=SE m"mov -'-E..'..
).E=&E =F;=S @movdis R'. D=&=(=SE m"mov -'-E..'..
MW Rim do pro"rama aliasapp.p WM
OBSER%ACDO" Deve-se atentar para o fato de $ue o e#emplo acima contempla uma estrutura Mono-Empresa. =ntes
de proceder com a criao do pro"rama aliasapp.p deve-se observar $ual a estrutura de bancos $ue a empresa possui.
,ara confi"urar o servio =ppServer para e#ecutar este pro"rama sempre $ue +ouver uma c+amada a um
pro"rama remoto! informe o nome do pro"rama aliasapp.p no campo D;nicializaoE 3Startup5.
)riar o ar$uivo aliasapp.p da se"uinte forma9
defne input parameter data"va#or as c$ar no"undo.
create a#ias mgadm %or database ems&cad no"error.
create a#ias .....
Data ltima atualizao: 18/03/2010 !ina: 13
"nificao #e &anco #e Da#os
3.6.7 Ierificar procedimentos descritos no item 4.4 B ;mpactos .,P. Deve-se somente tomar o cuidado de
incluir os ).E=&E =F;=S antes de e#ecutar o .<- nos pro"ramas.
Obs." o pro"rama btb42567 A para plataforma EindoFs e o btb4256g para plataforma -niG.
3.6.8 .ever cadastro de bancos na inte"rao EMS2#EMS/.
Data ltima atualizao: 18/03/2010 !ina: 10
-este ponto devero
ser criados os
Create Alias
necessrios.
"nificao #e &anco #e Da#os
3.6.8 .ever cadastro de bancos +ist%ricos.
3.6.10 .ever cadastro de bancos multi-planta.
3.6.11 ,or e#emplo! caso vocH possua o aplicativo DataIie@er instalado e confi"urado! tambm dever criar
um pro"rama de alias e substituir o parAmetro DBp "rpM"r0101.@E para D-p aliasdtv.pE na propriedade do atal+o. '
pro"rama aliasdtv.p seria9
Data ltima atualizao: 18/03/2010 !ina: 13
;nformar neste campo todos os =F;=S $ue
devero ser criados com a cone#o do EMS
2.0#
Selecionar esta
opo se o cliente
possuir bancos
unificados
;nformar neste campo todos os
=F;=S $ue devero ser criados.
Selecionar esta opo se o
cliente possuir bancos
"nificao #e &anco #e Da#os
MW ;n*cio do pro"rama aliasdtv.p WM
).E=&E =F;=S m"adm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"cld R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"dis R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ind R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"inv R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mnt R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mf" R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"uni R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"scm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ce# R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"tmp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mrp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"mp R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"ven R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S @movdis R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S m"rac R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movadm R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movdis R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movind R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movmnt R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movmf" R'. D=&=(=SE m" -'-E..'..
).E=&E =F;=S movrac R'. D=&=(=SE m" -'-E..'..
MW Rim do pro"rama WM
.un "rpM"r0101.@.
Guit.
OBSER%ACDO" Deve-se atentar para o fato de $ue o e#emplo acima contempla uma estrutura Mono-Empresa. =ntes
de proceder com a criao do pro"rama alias.p deve-se observar $ual a estrutura de bancos $ue a empresa possui.
>.s.: = converso para bancos unificados no faz parte do produto padro Datasul! em funo da $uantidade de
confi"ura:es poss*veis para unificao dos bancos de dados de clientes. = unificao dos bancos ser um Servio
prestado ao cliente $ue decidir pela <nificao. ,elas mesmas raz:es no sero disponibilizados pela Datasul as
defini:es 3.df5 pr-confi"uradas dos bancos unificados. Esta etapa dever ser realizada nas instala:es do )liente.
Dvidas adicionais ou necessidades de acompanhamento podem ser endereadas pelo canal de consultoria
telefnica, em Tecnologia, Suporte Banco de Dados. O telefone de acesso o (!" #$%$ ! ou o ($$" #$%$ $$%#.
Data ltima atualizao: 18/03/2010 !ina: 16
"nificao #e &anco #e Da#os
'. Procedimento de (etorno para )ancos Individuais
-a +ip%tese do cliente ter feito a unificao dos bancos e! por um motivo $ual$uer! ele $ueira voltar para a
situao anterior com os bancos individualmente separados 3,roduto ,adro5! devero ser e#ecutados os se"uintes
procedimentos9
).< Solicitar N Datasul m*dia da release atual. -esta m*dia estaro as defini:es das estruturas abertas.
).( Razer um bacOup de bancos! pro"ramas! scripts! etc. 3ver 2./ .e$uisitos5
).' (ai#ar os bancos vazios.
).* E#portar todos os dados 3.d5 na estrutura de bancos unificados.
).9 ;mportar os dados 3.d5 em cada um dos bancos individuais 3em cada banco de dados sero carre"adas as
tabelas do respectivo banco5.
).) E#portar os valores 3.d5 de todas as Se$SHncias do banco unificado
).+ ;mportar os valores 3.d5 de todas as Se$SHncias vindas do banco unificado para dentro de cada banco
individual 3repetir o processo para cada banco5. =s Se$SHncias $ue o banco individual no recon+ecer devero ser
descartadas 3=parecer uma mensa"em de erro! mas o processo pode continuar normalmente5.
).5 )omparar o nmero de re"istros e#istentes em cada tabela antes e ap%s a converso. = converso somente ser
bem sucedida se no +ouver nen+uma diferena de re"istros para nen+uma das tabelas.
Dvidas adicionais ou necessidades de acompanhamento podem ser endereadas pelo canal de consultoria
telefnica, em Tecnologia, Suporte Banco de Dados. O telefone de acesso o (!" #$%$ ! ou o ($$" #$%$ $$%#.
Data ltima atualizao: 18/03/2010 !ina: 17

Você também pode gostar