Conectando ao DB Progress com JDBC - Etapa 1/2.

Após semanas pesquisando, "quebrando a cabeça" e mantendo contatos com Caio Moreno ( o professor coruja), que deu a maior força, com Alex De Mello e o suporte do fornecedor de meu ERP sobre: SOCORRO! PRECISO CONECTAR MINHA SUITE PENTAHO AO DB PROGRESS COM JDBC... Ufa! Conseguimos. Por certo, Brasil a dentro ou mundo a fora, deve haver alguém que também conseguiu, porém não encontrei nenhum "passo-a-passo" para conectar o database Progress 10.1X.
Não será abordado configurações específicas do DB Progress, porém, inevitavelmente, temos que "tocar" nele. 
O DB Progress é muito poderoso, mas, se você não tem suporte a ele a partir do fornecedor do ERP... uhm...! Será "um parto fórceps".
Apesar de termos estações Linux (Ubuntu 10.04Lts) meu servidor roda em na plataforma "uîndous". 
Estou ansioso pra colocar o projeto de BI em prática, mas achei melhor criar logo esse "tuto" para não ficar no esquecimento e para ajudar outros que estavam na mesma situação que estive.
Chega de conversa. Vamos lá!

Introdução

Existe um processo de controle para banco de dados multi-usuário rodando em uma máquina com memória compartilhada, chamado broker. É a parte mais crítica de um ambiente Progress e executa algumas importantes funções como:

  • Executa a recuperação de problemas para garantir a integridade do banco de dados;
  • Aloca e inicializa memória compartilhada para o banco de dados baseado em parâmetros de inicialização do broker.
  • Aguarda (escuta) requisições de conexões a partir de clientes remotos e decide se existe um servidor para o cliente remoto, ou se é necessário inicializar um novo servidor para a requisição do cliente;
  • Desconecta as conexões e processos de clientes remotos e clientes self-service enquanto pára o banco de dados.
Ao inicializar o processo broker, ele requisita a memória compartilhada e abre as portas remotas aguardando conexões via socket de usuários remotos. É uma espécie de "intermediador pró-ativo e dinâmico".


Sem compreender isso não podemos continuar. Não se assuste com a teoria, vamos colocar logo a mão-na-massa.


Primeira Etapa - Criando um broker


A grande sacada está aqui! Iremos criar um broker usando a ferramenta Progress Explore Tool que está no pacote de instalação do Progress (eu uso a ver. 10.1B):


1 - Acesse a ferramenta
Fig. 1.1 - Atalho para a ferramenta

Fig. 1.2 - Essa é a tela do console


2- Conecte ao servidor



Fig. 2.1 - Solicitação de usuário e senha

Pode ser que não tenha sido atribuído senha para o usuário "Administrador", sendo assim basta pressionar o botão "OK".

Fig. 2.2 - Tela do console após está conectado ao servidor.

3 - Acesse a pasta "bancos de dados", selecione o banco que você deseja acessar e "pare" esse banco.

Fig. 3.1 - Visualização de todos os bancos de dados existentes.


Fig. 3.2 - Parar banco de dados.


4 - Expandindo o objeto (banco de dados) chegue até "configurações -> default configuration"
Fig. 4.1 - Observe que o status está "Não está em execução".


5 - Estando "defaultConfiguration" selecionado, insira um novo objeto e informe o nome desse objeto
Fig. 5.1 - Inserindo um novo objeto.


Fig. 5.2 - Determine um nome para o objeto.

6 - Configure o broker. A figura abaixo tem uma configuração padrão. Os dois parâmetros mais importantes são "Tipo de Cliente" e "Nome do serviço ou número da porta".
Fig. 6.1 - Tipo de cliente deve ser "somente SQL" e
número da porta é bom que esteja dentro do range 2000 ~ 2999 

7 - Pronto... Confirme as configuração ( botão OK ) e levante o banco novamente.

Agora siga a Etapa 2 para completar o serviço.


Boa sorte e sucesso!




Comentários

  1. Olá, vcs já tentatam conectar com o Progress 8? Alguma dica?

    ResponderExcluir
    Respostas
    1. Olá, rmantovani.

      Nunca usei a versão 8 do Progress e agora estou trabalhando com Oracle. Se o problema for com o drive JDBC posso lhe dar uma dica de alguns sites para você pesquisar: http://www.progresstalk.com/forum.php; http://www.datadirect.com/products/jdbc/index.html; https://docs.google.com/viewer?url=http://www.smart-it-consulting.com/progress/odbc/progress-jdbc-driver-guide.pdf&pli=1

      Aconselho a atualizar a versão do Progress.

      Excluir
  2. Bom dia

    Tem aqui um erp datasul com progress 10.1B. Se eu fizer o que está sendo proposto neste tutorial, terei alguma alteração ou problema no acesso ao meu ERP?

    ResponderExcluir
    Respostas
    1. Bom dia, Valter.
      Tudo que executamos em um Banco de Dados deve ser feito com cautela. O tutorial ensina a criar um NOVO objeto no Banco, portanto não há perigo eminente de danificação no ACESSO aos DADOS de seu ERP.
      Aconselho realizar um backup de todo o esquema do banco bem como de seus dados.
      Estou a disposição,
      Boa sorte.

      Excluir
    2. Consegui fazer a configuração do Broker, porém ao tentar fazer a conexao, aparece a seguinte mensagem de erro:
      java.lang.RuntimeException: java.sql.SQLException: [DataDirect][OpenEdge JDBC Driver]OE Broker fails to find a server available for connecting..


      Tem alguma ideia do que possa ser?
      Abraço

      Excluir
    3. Valter,
      Aparentemente o problema é com o "nome do host". Tente acessar através do IP. Mantenha contato.

      Excluir
    4. Então...
      Eu já tinha testado com o IP e com o nome do host. Quanto ao usuario, preciso criar algum? Estou usando o mesmo usuario que pede quando me conecto pelo Progress Explorer Tool.

      Mais alguma sugestão? To parado com isso já faz um tempão.

      Excluir
    5. Você já deu uma olhada no post "http://inpentaho.blogspot.com.br/2011/05/conectando-ao-db-progress-com-jdbc.html", talvez o problema está no preenchimento da "Custom Connection URL" e/ou do "Custom Driver Class Name"...

      Excluir
    6. Sim...
      Estou tentando conectar pelo java... a URL e o Class Name estão iguais...

      Tentei conectar usando esse tutorial abaixo mas deu o mesmo erro:

      ingleses.datasul.com.br/blog/post/2009/05/21/Ferramenta-grafica-para-conectar-o-Progress-via-JDBC.aspx


      Vou tentar alguns parametros de inicialização do banco pra ver se da certo.

      Abraço

      Excluir
  3. Muito bom, irei testar!! Parabéns desde já!!

    ResponderExcluir
    Respostas
    1. Wagnerfm, valeu.
      Atualmente estou participando em projetos de infraestrutura de redes e telecom, mas gosto muito de banco de dados e BI.
      Saúde e Paz.

      Excluir

Postar um comentário

Postagens mais visitadas deste blog

Conectando ao DB Progress com JDBC - Etapa 2/2.

Erro: [DataDirect][OpenEdge JDBC Driver][OpenEdge] Table/View/Synonym não encontrado (7519)