Hoje vamos mostrar como instalar e configurar o Protheus com PostgreSQL.
Essa instalação tem 5 partes, sendo categorizado de A à E, sendo:
- Instalação do PostgreSQL
- Criação da Database no PostgreSQL via pgAdmin
- Configuração do ODBC
- Instalação do License Server e DBAccess
- Instalação do Protheus
Abaixo algumas observações sobre a instalação:
Obs. 1: Será feito a instalação na versão do Windows x64
Obs. 2: Será feito a instalação do Protheus 12.1.33 Harpia
Obs. 3: Nessa instalação não foi colocado Arquivos de Configuração Fiscal, Procedures, entre outros arquivos (mas caso você queira, pode colocar na sua instalação)
Obs. 4: Pessoal, o indicado para ambientes de PRODUÇÃO com Postgre é a utilização de Linux ao invés de Windows, conforme documentação oficial do TDN – https://tdn.totvs.com/display/public/PROT/Protheus+com+PostgreSQL (leia a partir de “Por que usar o PostgreSQL em Linux?” no link)
Obs. 5: Pessoal, como esse artigo é um pouco antigo, de 2022, recomendo fortemente que antes de iniciarem ele, deem uma olhada também no TDN (link acima, que também tem um tutorial excelente para instalação no Windows)
Parte A – Instalação do PostgreSQL:
- Faça o download do PostgreSQL através desse link – PostgreSQL: Downloads , nós usamos a versão do Windows disponível nesse link Download PostgreSQL (enterprisedb.com)
- Execute o instalador, prossiga e marque todas as opções
- Nesse exemplo, na senha, iremos colocar tst123
- No local, defina C (conforme instruído no TDN – tdn.totvs.com/pages/releaseview.action?pageId=691456470)
- No fim da instalação, já deixe marcado a opção para abrir o Stack Builder
- No Stack Builder, marque a opção para instalar o driver para 64 bits ou 32 bits dependendo do seu S.O.
- Prossiga com a instalação até finalizar
Parte B – Criação da Database no PostgreSQL via pgAdmin:
- Após finalizar a instalação, clique no iniciar e procure por pgAdmin
- No aplicativo, insira a senha no tópico 3
- Depois clique com o botão direito em Databases, e depois em Create Database
- No nome da database, iremos colocar protheusPG
- Na aba definição, coloque Win1252 no Encoding, template0 no Tablespace e C no Collation e Character Type
Parte C – Configuração do ODBC:
- Agora, clique em iniciar no Windows e procure por ODBC, abra a versão do seu S.O. (64 ou 32)
- Vá na aba DNS de Sistema e clique em Adicionar, e escolha o tipo PostgreSQL ANSI
- Na tela de configuração, no datasource e na database coloque o nome criado no tópico 11, no server coloque o IP ou o nome da máquina, no usuário coloque postgres, na porta coloque a porta da instalação (default 5432) e na senha coloque a configurada no tópico 4
- Clique no botão Datasource
- Na aba 1, coloque o Unknown Sizes como Longest e deixe o tamanho máximo de Varchar como 2000 (referência em https://tdn.totvs.com/display/tec/DBAccess+-+Como+criar+uma+fonte+de+dados+para+uso+com+PostgreSQL )
- Por último, clique no botão Test, é para exibir a mensagem de conexão com sucesso, então pode clicar no botão Save
Parte D – Instalação do License Server e DBAccess:
- Caso não tenha o JAVA JRE instalado, instale através desse link Download Java for Windows
- Faça o download do License Server, disponível em TOTVS License Server Virtual – Frameworksp – TDN
- Depois de baixar, descompacte o arquivo, e faça a instalação
- Iremos fazer a instalação na pasta C:\TOTVS\TOTVSLicenseVirtual
- Na parte da porta, iremos usar a 7777
- Se pedir o TOTVS ID, e você tiver instalando apenas uma base de testes, pode clicar em Cancelar
- Acesse agora o download do DbAccess através do link https://suporte.totvs.com/portal/p/10098/download?e=1031464
- Após o download, descompacte o arquivo e copie tudo para o diretório C:\TOTVS\DBAccess
- Crie um arquivo dbaccess.ini via Bloco de Notas dentro do diretório citado no passo 26, com o seguinte conteúdo:
[General] LicenseServer=localhost LicensePort=7777 Port=7890 ByYouProc=0 AuditLog=0 AuditServer= AuditPort=7891 AuditLevel=1 AuditAll=0 AuditSqlExec=1 AuditProcExec=1 AuditThreadComment=1 AuditERPUserName=1 AuditSingleThread=0 [Service] Name=DBAccess DisplayName=TOTVS | DBAccess
- Clique com o botão direito em cima do dbaccess64.exe, e depois vá em Enviar para Área de Trabalho (Criar Atalho)
- Clique com o botão direito no atalho, e no caminho coloque -install
- Após aplicar a alteração, clique com o botão direito, e depois clique em Executar como Administrador
- Agora clique no Iniciar e procure por services.msc
- Dentro do Serviços procure por TOTVS | DbAccess
- Clique com o botão direito e depois clique em Propriedades
- Mude para automático, clique em Aplicar e depois clique em Iniciar
- Volte na pasta do DbAccess, abra o DbMonitor.exe, coloque localhost e a porta 7890
- Vá na aba Configurações, depois na sub aba Postgres e clique no botão novo, então digite o nome da base criada no tópico 11
- Coloque o nome de usuário postgres e a senha configurada no tópico 3
- Depois vá na aba Assistentes, e clique em Validação de Conexão
- Prossiga com a validação, selecione Postgres e coloque o nome da base configurada, se tudo der certo, será exibido a mensagem de conexão com sucesso
Parte E – Instalação do Protheus:
- Baixe o repositório de objetos disponível em Portal de Downloads TOTVS > Linha Protheus > Versão 12.1.33 > Repositórios ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1032311 . Após o Download, coloque o arquivo baixado em C:\TOTVS\ERP\Protheus\apo e renomeie o arquivo para TTTM120.RPO
- Baixe o AppServer disponível em Portal de Downloads TOTVS > Linha Protheus > TOTVS TEC Framework > AppServer ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1031460 . Após o Download, descompacte a pasta, e deixe os arquivos em C:\TOTVS\ERP\Protheus\bin\appserver
- Dentro dessa mesma pasta, crie um arquivo chamado appserver.ini com o seguinte conteúdo (fique atento com o nome do banco e o tipo de conexão como banco sendo POSTGRES):
[AMBTST] SourcePath=C:\TOTVS\ERP\Protheus\apo RootPath=C:\TOTVS\ERP\Protheus_Data RPOCustom=C:\TOTVS\ERP\Protheus\apo\custom.rpo StartPath=\system\ RpoDb=top RpoLanguage=Portuguese RpoVersion=120 Trace=0 TopMemoMega=1 DBAlias=protheusPG DBServer=localhost DBDatabase=POSTGRES DBPort=7890 StartSysInDB=1 [TopConnect] Database=POSTGRES Alias=protheusPG ProtheusOnly=0 Port=7980 [Drivers] Active=TCP [TCP] TYPE=TCPIP Port=1257 [General] InstallPath=C:\TOTVS\ERP\Protheus Segmento=YddTQHWW=VZF=yhu Serie===AV [LICENSECLIENT] server=localhost port=7777 [service] Name=TOTVS_PROTHEUS Displayname=TOTVS | Protheus [TCPSERVER] Enable=0
- Baixe o Smartclient disponível em Portal de Downloads TOTVS > Linha Protheus > TOTVS TEC Framework > Smartclient ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1031469 . Após o Download, descompacte a pasta, e deixe os arquivos em C:\TOTVS\ERP\Protheus\bin\smartclient
- Dentro dessa mesma pasta, crie um arquivo chamado smartclient.ini com o seguinte conteúdo:
[config] lastmainprog=SIGAMDI envserver=AMBTST [drivers] active=tcp [tcp] server=localhost port=1257
- Vamos baixar agora os menus do Brasil disponível em Portal de Downloads TOTVS > Linha Protheus > Protheus versão 12.1.33 > Menus ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1031459 . Após o Download, descompacte a pasta, e deixe os arquivos em C:\TOTVS\ERP\Protheus_Data\system
- Vamos baixar agora o dicionário de dados completo disponível em Portal de Downloads TOTVS > Linha Protheus > Protheus versão 12.1.33 > Dicionário de Dados ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1031455 . Após o Download, descompacte a pasta, e deixe os arquivos em C:\TOTVS\ERP\Protheus_Data\systemload
- Vamos baixar agora o help de campos completo disponível em Portal de Downloads TOTVS > Linha Protheus > Protheus versão 12.1.33 > Dicionário de Dados ou baixe através desse link https://suporte.totvs.com/portal/p/10098/download?e=1031457 . Após o Download, descompacte a pasta, e deixe os arquivos em C:\TOTVS\ERP\Protheus_Data\systemload
- Crie a pasta C:\TOTVS\ERP\Protheus_Data\spool
- Vá na pasta do AppServer, clique com o botão direito no appserver.exe e depois vá em Criar Atalho na área de trabalho
- Clique com o botão direito no atalho e depois clique em Propriedades e no caminho coloque -install
- Após efetivar a tela anterior, clique com o botão direito e depois em Executar como Administrador
- Abra os serviços do Windows (services.msc), vá no TOTVS | Protheus, inicie o serviço e clique com o botão direito e depois em Propriedades, deixe o serviço como automático
- Vá na pasta do SmartClient, clique com o botão direito no smartclient.exe e depois vá em Criar Atalho na área de trabalho
- Clique com o botão direito no atalho e depois clique em Propriedades e no caminho coloque -M
- Dê um duplo clique no atalho do SmartClient e abra o SIGAMDI
- Na primeira tela, selecione para criar uma empresa de teste
- Ao exibir a pergunta para confirmar o País, selecione Brasil
- Após a instalação ser bem sucedida, pode usar o sistema tranquilamente
- Abaixo um print do cadastro de grupo de produtos no Protheus (à esquerda) e um select executado no pgAdmin (à direita)
Bom pessoal, por hoje é só.
Abraços e até a próxima.
Bom dia, excelente postagem! Grato!
Gostaria de saber se o PostgreSql tem limitação de tamanho de dados como é no SQLServer Express.
E também saber se há desvantagem em instalar o PostgreSql no Windows que no Linux.
Bom dia Luiz, obrigado pelo feedback.
Ele não tem limitação de dados como as versões Express do SQL Server e do Oracle.
Quanto a desvantagem, não sei dizer se teria alguma entre os dois S.O. (nunca precisei realizar uma comparação), mas procurando no Google por “postgresql é melhor no windows ou linux”, encontrei esse link no site oficial – https://www.postgresql.org/message-id/4E397FEE.4060107@squeakycode.net
Resumidamente, falam que o Linux é melhor em desempenho na maioria dos cenários, mas pode ser que haja algum cenário onde o Windows seja melhor ou equivalente. Só que a dica que o Andy dá também nesse link, é que se a performance for parecida ou com pouca diferença, ai o ideal é usar no S.O. que tem maior conhecimento, pois assim qualquer b.o. que surgir vai ser mais fácil e rápido de solucionar.
Um grande abraço.
Ola, Atilio boa iniciativa.
Após analisar seu artigo e em resposta à pergunta de Luiz Correia, a recomendação para o uso do Protheus em cenários que utilizam PostgreSQL para ambiente de produção é que se utilize o banco de dados em Linux. Essa orientação já está devidamente documentada no TDN, e há diversas razões para isso.
Fala Ronaldo, tudo joia?
Opa, obrigado pelo comentário e contribuição. Se possível, nos mande o link do TDN, que daí atualizamos aqui o artigo colocando a referência.
Um grande abraço.
Ola Atilio
Segue o documentos oficiais
https://tdn.totvs.com/display/public/PROT/Protheus+com+PostgreSQL+-+Linux
Esse aqui são para os desenvolvedores.
https://tdn.totvs.com/display/public/PROT/Protheus+com+PostgreSQL+para+devs+-+Windows
Esse aqui é sobre a questão do suporte do postgreSQL
https://tdn.totvs.com/display/public/PROT/Suporte+para+o+PostgreSQL
Opa, obrigado pela rápida contribuição Ronaldo.
Através dos links que você mandou, achei aqui o link que fala da recomendação de utilizar Linux do que Windows em ambientes de produção, segue: https://tdn.totvs.com/display/public/PROT/Protheus+com+PostgreSQL
Atualizei também o artigo, citando o link logo no começo.
Um grande abraço.
Fiz todo o processo, deu tudo certo, porém, na tela de logon é solicitado usuário/senha… qual usuário/senha devo infomar ali?
Bom dia Marcio, tudo joia?
Após você fazer a instalação padrão, o usuário é admin e a senha é vazia.
Abraços.
Olá, Daniel. Tudo bem?
Excelente material. Muito prático.
Só tem um ponto:
. no item 4 da instalação do PostegreSql, você indica para colocar a opção “Portuguese, Brazil”, mas na documentação da TOTVS diz para que deixe a opção “C”.
Artigo da TOTVS:
. TDN: 01. Instalação do PostgreSQL em Windows
https://tdn.totvs.com/pages/releaseview.action?pageId=691456470
→ Defina o padrão de idioma/caracteres da nova instância PostgreSQL. Selecione a opção C e clique em Next
. TDN: Banco de dados homologados: PostgreSQL
https://tdn.totvs.com/display/public/PROT/PostgreSQL
→ Collation: C
Fala Maicon, bom dia, tudo joia?
Opa, obrigado pelo adendo, atualizei o passo 4 do artigo e adicionei a observação de número 5.
Tenha uma ótima e abençoada quarta feira.
Um grande abraço.