Criando uma conexão ODBC com o banco de dados
Execute o utilitário do Windows ODBC Data Sources, de acordo com a sua arquitetura (32 ou 64 bits).
A interface será similar a esta:

Para criar uma nova conexão devemos utilizar a aba System DSN (DSN de Sistema). Dentro desta aba clique no botão Add/Adicionar. Surgirá uma nova janela:

Note que podem existir inúmeros drivers instalados. Cada um possibilita a conectividade com um tipo de banco diferente, por exemplo SQL Server, Oracle etc. As informações nesta janela podem variar, de acordo com o que já foi instalado previamente no equipamento. Fique atento para selecionar o tipo de driver corretamente.
Se o ODBC instalado foi o de ambas as arquiteturas, as opções serão similares à imagem:
- PostgreSQL ANSI
- PostgreSQL ANSI(x64)
- PostgreSQL Unicode
- PostgreSQL Unicode(x64)
Se apenas o ODBC x64 foi instalado, haverão duas opções disponíveis para PostgreSQL:
- PostgreSQL ANSI(x64)
- PostgreSQL Unicode(x64)
Selecione o padrão PostgreSQL ANSI, caso sua arquitetura seja de 32 bits, ou PostgreSQL ANSI(x64), caso seja de 64 bits, e clique em Finish/Concluir.
Surgirá uma nova janela. É nela onde informaremos os dados para a conexão com o PostgreSQL:

Utilize as seguintes definições para a conexão ODBC:
Data Source = defina um nome para esta conexão ODBC. Aqui vale a mesma regra de nomenclatura usada para o PostgreSQL. Não use caracteres acentuados, especiais nem espaço.
Description = fique à vontade para acrescentar um breve comentário neste campo. É meramente descritivo e não é obrigatório.
Database = especifique o nome da database criada no PostgreSQL anteriormente. É muito importante colocar o nome da mesma forma como ele está dentro da instância, pois como foi descrito anteriormente, o PostgreSQL é case sensitive e diferencia letras maiúsculas de minúsculas.
SSL Mode = por padrão já vem desabilitado (disable). Não modifique este valor.
Server = deve ser informado o endereço IP ou o nome do computador onde a instância PostgreSQL está instalada. Como o escopo deste documento trata de ambiente local, pode-se utilizar a palavra localhost. Se a instância estiver localizada em um outro computador, especifique o IP ou nome do computador remoto.
Port = é a porta de comunicação com a instância PostgreSQL. Lembre-se que no momento da instalação do produto esta informação foi solicitada. A porta padrão é 5432.
User Name = é o nome do usuário criado na instância PostgreSQL. É com este usuário que o acesso à database será realizado. É o mesmo usuário usado na criação da database (veja os passos descritos na seção Como criar uma database PostgreSQL).
Password = é a senha do usuário da database. É a mesma senha usada na criação do usuário dentro da instância PostgreSQL.
Após fornecer todos os campos, clique em Test para verificar se a comunicação com a database será realizada ou não. Se os dados fornecidos estiverem corretos, será exibida a seguinte janela:

Se houver algum problema de comunicação, verifique os dados e tente novamente.
Após realizar o teste com sucesso, clique em Save para salvar a conexão ODBC.
Configurando o DBAccess para acesso ao banco de dados
Para concluir o processo de comunicação com a database PostgreSQL, será necessário definir uma conexão dentro do DBAccess.
Acesse o utilitário DBMonitor:

Selecione a aba Configurações e acesse a aba PostgreSQL:

Clique no botão Novo. Surgirá uma janela solicitando um nome para a conexão:

Forneça um nome e clique em OK.
A janela anterior será reapresentada com a aba Ambiente preenchida. Em Nome e Senha, utilize o nome de usuário (user name) e senha (password) utilizados na conexão ODBC.

Clique em Salvar.
Sempre que uma conexão é criada, ela deve ser testada para a validação de seu acesso. Selecione a aba Assistentes e clique em Validação de Conexão:

No assistente de conexão, clique em Avançar. Na tela seguinte, selecione o banco de dados Postgres:

Clique em Avançar. Na próxima tela, insira o nome do ambiente (informado ao criar o ambiente no DBAccess):

Clique em Finalizar. Se tudo estiver configurado corretamente, a mensagem exibida será "Conexão Ok!":

Ao realizar o teste pela primeira vez em uma database vazia, o próprio DBAccess fará a criação de algumas tabelas, comprovando que a database está acessível e pronta para uso. A partir deste momento, basta configurar corretamente seu ambiente no arquivo de configuração appserver.ini para que o Protheus possa utilizá-la.
Exemplo de dbaccess.ini para ambientes em Windows usando PostgreSQL
#Windows
#D:\totvs\microsiga\dbaccess\dbaccess.ini
[General]
LicenseServer=10.2.0.9
LicensePort=5555
ODBC30=1
[POSTGRES]
environments=TPPRD,TPHML,TPDEV
[POSTGRES/TPPRD]
user=tpprd
password=œðö¼
TableSpace=tpprd_data
IndexSpace=tpprd_index
[POSTGRES/TPHML]
user=tphml
password=œðèó´
TableSpace=tphml_data
IndexSpace=tphml_index
[POSTGRES/TPDEV]
user=tpdev
password=œðäëŠ
TableSpace=tpdev_data
IndexSpace=tpdev_index
Após o teste de conexão, verifique a criação das tabelas do DBAccess no banco de dados. Com estas tabelas, o banco de dados pode ser utilizado para o ERP.
No pgAdmin podemos visualizar no “Databases” + “tpprd” + “Schemas” + “Tables”, as tabelas que foram criadas após o teste de conexão do DBAccess:

Ou com a seguinte query:
SELECT tablename FROM pg_tables where tableowner='tpprd';
