Você está na página 1de 12

MICROSIGA PROTHEUS x POSTGRESQL x LINUX

1 SISTEMA OPERACIONAL DO SERVIDOR E BANCO DE DADOS


POSTGRESQL
1.1 Instalando o Sistema Operacional do servidor
Nessa primeira fase ser instalado o sistema operacional do servidor e o
software de banco de dados, neste caso, o PostgreSQL e o sistema
operacional Debian. Por ser um sistema operacional bastante divulgado,
com diversos tutoriais na internet ensinando como fazer a instalao, no
ser preciso repetir esses passos aqui, por isso, recomendo os links abaixo
para fazer o processo, esse tutorial bem completo e aborda as diversas
opes e questes tcnicas relacionadas ao processo.

http://www.guiadohardware.net/tutoriais/servidores-debianubuntu/pagina2.html
http://www.guiadohardware.net/tutoriais/servidores-debianubuntu/pagina3.html
http://www.guiadohardware.net/tutoriais/servidores-debianubuntu/pagina4.html

1.2 Instalando o SGBD


Feita a instalao do servidor vamos fazer a instalao do SGBD (Sistema
Gerenciador de Banco de Dados) em um terminal. Logado como ROOT
digite:
apt-get update && apt-get install postgresql
1.3 Criando um usurio no SGBD
Agora necessrio criar um usurio para que o Protheus possa usar na
comunicao com o banco, para isso, preciso digitar e responder conforme
abaixo:

su- postgres -s /bin/bash -c "/usr/bin/createuser protheus"


A nova role poder criar um super-usurio? (s/n) n
A nova role poder criar bancos de dados? (s/n) s

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


A nova role poder criar novas roles? (s/n) s
1.4 Criando o banco de dados
Sugiro optar pela criao do banco usando a codificao LATIN1, pois o
Totvsdbaccess falhou ao conectar um banco usando UTF-8. Sendo assim,
hora de criar o banco de dados, com o comando:
su
postgres
--encoding=LATIN1"

-s

/bin/bash

-c

"/usr/bin/createdb

dadosadv

Se ao executar o comando acima, o sistema retornar o erro abaixo:


createdb: criao do banco de dados falhou: ERRO: codificao LATIN1 no
corresponde a configurao regional do servidor pt_BR.UTF-8
DETAIL: A definio de LC_TYPE do servidor requer codificao UTF8.
Ser preciso executar a sequncia de comandos abaixo, para resolver essa
incompatibilidade de codificao:
/etc/init.d/postgresql-8.3 stop
cd /var/lib/postgresql/8.3/main
mv server.* ../
cd ..
rm main/* -Rf
su - postgres -s /bin/bash -c "/usr/lib/postgresql/8.3/bin/initdb
pgdata=/var/lib/postgresql/8.3/main/
--encoding=LATIN1
--username=postgres -W "
mv server.* main/
chown postgres.postgres /var/lib/postgresql/
/etc/init.d/postgresql-8.3 start

--locale=C

Depois, s repetir o comando de criao do banco de dados:


su
postgres
--encoding=LATIN1"

-s

/bin/bash

-c

"/usr/bin/createdb

dadosadv

1.5 Colocando uma senha no usurio


Depois de criado o banco precisamos criar uma senha para nosso usurio,
isso feito conectando-se ao banco:
su - postgres -s /bin/bash -c "/usr/bin/psql dadosadv"
J conectado ao banco, digita-se:
dadosadv=# alter
dadosadv=# \q

user

protheus

with

encrypted

password

'senha';

MICROSIGA PROTHEUS x POSTGRESQL x LINUX

2 AMBIENTE ODBC E UNIXODBC


2.1 Funcionamento
Para que o Totvs Microsiga Protheus possa se comunicar com um banco de
dados SQL, utilizado um programa intermedirio (Dbaccess), que se
comunica com uma fonte dados ODBC e, esta por sua vez, acessa o banco
de dados, criando assim, um mtodo que permite ao Protheus acessar boa
parte dos bancos de dados SQL com apenas uma verso do programa e
manter a compatibilidade com o padro DBF (Que era a base do sistema no
inicio da sua historia).
Nessa segunda etapa, ser preparado o ambiente ODBC no servidor Linux,
para que posteriormente o Dbacces possa acessar a base de dados criada
anteriormente. O primeiro passo instalar o UnixODBC e o Driver ODBC do
PostgreSQL
2.2 Instalando o UnixODBC e o suporte a ODBC do PostgreSQL
Antes de instalar o suporte a odbc para PostgreSQL oficial da distribuio
utilizada neste tutorial, preciso colocar o pacote odbc compatvel com o
Dbaccess da Totvs (infelizmente o programa da Totvs ainda carrega suporte
a uma biblioteca muito antiga para acesso odbc ao PostgreSQL), vamos

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


torcer (ou reclamar) para que a Totvs atualize esse suporte, pois para os
outros bancos o suporte bem mais atualizado.
A primeira coisa a fazer baixar o pacote odbc compativel com
totvsdbacces:
http://ftp3.nrc.ca/debianarchive/debian/pool/main/p/psqlodbc/odbc-postgresql_07.03.02005_i386.deb
Descompactar o arquivo baixado e instalar o UnixODBC e o suporte a ODBC
do PostgreSQL digitando o comando abaixo:
apt-get install odbc-postgresql unixodbc
E para dizer ao Dbaccess onde fica a biblioteca de acesso odbc do postgres
(Ele s conecta com a libpsqlodbc.so), um link simblico resolve :
ln -sf /usr/lib/odbc/psqlodbc.so /usr/lib/libpsqlodbc.so
Agora preciso saber onde foi instalado o arquivo de setup do Driver ODBC
do PostgreSQL com o seguinte comando:
find / -iname libodbcpsql*
Possivelmente, o resultado ser:
/usr/lib/odbc/libodbcpsqlS.so
Essa informao necessria para o prximo passo, onde ser adicionado
um driver ao sistema e criada a conexo ODBC ao banco,
2.3 Adicionando o Driver PostgreSQL no UnixODBC
Para adicionar o Driver ODBC do PostgreSQL, preciso criar um arquivo
chamado driverpg, com o seguinte contedo:
[PostgreSQL]
Description
= PostgreSQL driver for Linux & Win32
Driver = /usr/lib/libpsqlodbc.so
Setup = /usr/lib/odbc/libodbcpsqlS.so
FileUsage = 1
Feito isso, digite o seguinte comando:
odbcinst -i -d -f driverpg
Este comando coloca o driver ODBC do PostgreSQL disponvel no sistema,
copiando as informaes do arquivo driverpg para o arquivo de sistema
/etc/odbcinst.ini
Para conferir se gravou corretamente, digite:
cat /etc/odbcinst.ini
2.4 Adicionando uma conexo ODBC

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


Para adicionar a conexo, preciso criar um arquivo chamado conexaopg,
com o seguinte contedo (ateno para os itens que devem ser alterados
conforme sua configurao):
[ODBC Data Sources]
dbprotheus=Base de dados do protheus
[dbprotheus]
Servername=localhost
Username=protheus
Password=senha
Database=dadosadv
Driver=PostgreSQL
Port=5432
ReadOnly=0
MaxLongVarcharSize=2000
Ateno!Os dados acima devem ser preenchidos observando os seguintes
itens:
Username: Aqui deve ser colocado o nome de usurio criado no capitulo 1;
Password:
A
senha
do
usurio
acima;
Database: O nome do banco de dados tambm criado no capitulo 1;
Depois,
odbcinst -i -s -f conexaopg

digite:

Este comando coloca a Conexo ODBC do PostgreSQL disponvel no


sistema, copiando as informaes do arquivo conexaopg para o arquivo de
sistema /root/.odbc.ini
Para
conferir
cat /root/.odbc.ini
2.5

Para
saber
isql dbprotheus
Se

se

se

aparecer

gravou

corretamente,

Testando
est
tudo
uma

a
funcionando,
tela

digite:
conexo
digite:
assim:

Ento, deu tudo certo, basta digitar quit e depois a tecla enter para sair do
ambiente de teste.
No prximo capitulo o foco ser na instalao e configurao do Dbaccess,
aguardem.
Referencias:
http://www.debian-administration.org/articles/496

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


http://www.vivaolinux.com.br/artigo/Microsiga-Protheus-com-Postgres/?
pagina=3
Tags: banco de dados, Debian, erp, microsiga, odbc, postgresql, protheus,
servidor, totvs, unixodbc

3 GATEWAY DE BANCO DE DADOS E TOTVSDBACCESS


3.1 INTRODUO
A Totvs utiliza um software que faz a funo de gateway, ou seja, um
intermedirio, que fica entre a aplicao Totvs e a conexo ODBC que d
acesso ao bando de dados SQL, dessa forma, possvel ter uma nica
aplicao para diferentes bancos de dados SQL. Nesse capitulo ser
mostrado como instalar o programa Topconnect/TotvsDBaccess, sendo que,
o processo de instalao basicamente o mesmo, divergindo apenas na
parte da instalao das licenas e sua aplicao, que no ser abordada
neste tpico.
3.2 DOWNLOAD
Para instalar o programa preciso primeiro baixa-lo no site da Totvs,
acessando o seguinte endereo:
http://suporte.totvs.com/download
Essa uma rea exclusiva para clientes e para acessa-la o usurio tem de
ter um login vlido, quem no tiver acesso, pode conseguir uma cpia dos

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


softwares atravs das franquias ou pessoal da Totvs que tenha esse acesso,
claro, para poder avaliar, se for para usar em produo, tem te comprar as
devidas licencas pelo canais definidos pela Totvs.
3.3

INSTALANDO
Para instalar o TotvsDBaccess, primeiro necessrio acessar um terminal
como usurio root e depois criar um diretrio base para a instalao com o
comando:
mkdir /totvsdbaccess
Atente para o fato de que /totvsdbaccess o diretrio base para a
instalao e pode estar localizado em outro lugar, isso pode ser modificado
e est sendo usado este exemplo aqui, apenas para simplificar o
procedimento.
Acesse o diretrio onde foi
TOTVSDBACCESS, com o comando.

salvo

arquivo

compactado

do

cd /caminho_do_arquivo_baixado
Descompacte o arquivo, usando o comando:
tar xvzf totvsdbaccess_v.v_linux_aaaammdd.tar.gz -C /totvsdbaccess
A nomeclatura v.v no nome do arquivo a verso do produto e
aaaammdd referente a identificao daquilo que a totvs chama de build
do produto.
Como o produto j est instalado, j possivel executa-lo, acessando a
pasta do banco a ser acessado, conforme segue:
Para Oracle:
/totvsdbaccess/oracle/
Para Informix:
/totvsdbaccess/informix/
Para outros bancos (PostgreSQL, Mysql ):
/totvsdbaccess/multi/
Estando na pasta, basta executa-lo com o comando:
./totvsdbaccess
3.4 TESTANDO
Para testar a conexo do Dbaccess com o banco, deve ser usado o
totvsdbmonitor (antigo topmonitor). Nessa verso, esse comando s

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


funciona se o ambiente grfico do linux estiver ativo, caso nao esteja,
instale o Dbaccess no ambiente Windows de uma estao, execute o
totvsdbmonitor e digite o ip do servidor linux na tela inicial, no campo
Servidor.
No Linux, o mesmo pode ser executado digitando:
/totvsdbaccess/totvsdbmonitor

Na primeira tela, possvel ver diversas informaes sobre o servidor


Dbaccess:

Clicando na aba Configuraes e sub aba Gerais, temos uma srie de


informaes a serem preenchidas para a operacionalizao do servidor
(usurios e servidor de licena so as principais):

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


Notem que alm da sub aba Gerais, existe uma sub aba para a
configurao de cada banco de dados suportado pelo Dbaccess, clique na
aba Postgres, depois clique no boto novo, para criar a configurao de
acesso ao banco criado nos capitulos anteriores:

Na prxima tela, digite o nome da configurao (preferencialmente o


mesmo nome do banco criado):

Criada a configurao, coloque o nome do usurio e a senha de acesso ao


banco (conforme usado nos capitulos anteriores):

Agora vamos a aba Assistentes, onde ser testada a configurao criada,


clicando no boto Validao de conexo

MICROSIGA PROTHEUS x POSTGRESQL x LINUX

A partir dessa tela, ser fornecida as informaes necessrias ao teste de


conexo:

A primeira, o banco a ser acessado, no caso, escolha Postgres:

A segunda, o nome da configurao:

MICROSIGA PROTHEUS x POSTGRESQL x LINUX

Se tudo estiver certo, o Dbaccess mostra a seguinte tela:

No terminal que estiver executando o Dbaccess, ser exibido algo parecido


com a figura abaixo:

3.5 AS LICENAS
As licenas do Dbaccess so gerenciadas por um Hardlock(USB ou paralelo)
ativo no servidor Protheus (servidor de licenas), sem isso, ele permite o
acesso de apenas dois usurios. Para maiores informaes sobre o
gerenciamento de licenas do Dbaccess, favor consultar o pessoal da Totvs
atravs do suporte tcnico.
Referencias
http://www.vivaolinux.com.br/artigo/Microsiga-Protheus-com-Postgres/?
pagina=4

MICROSIGA PROTHEUS x POSTGRESQL x LINUX


http://www.akronbr.com.br/Downloads/toplinux.pdf
http://www.sigaconsult.com.br/manuais/files/Microsiga_ERP/top.conect/guia.t
op4.linux.unix.pdf
http://br-linux.org/tutoriais/001879.html
http://tdn.totvs.com/kbm#22302
http://www.gustavoroberto.blog.br/wpcontent/uploads/2008/microsiga/inst_protheus/inst_protheus.pdf