sábado, 8 de agosto de 2009

Dica: Alterando Configurações de BD Sem Recompilar Aplicação

Quando desenvolvemos uma aplicação, seja ela Win ou Web, temos fácil acesso as propriedades de DBMS oferecidas pelo GX. Nessas propriedades conseguimos trocar o banco de dados, usuário, senha dentre outras coisas.

A situação fica um pouco complicada quando nós temos que alterar essas propriedades (BD, servidor, user e password) sem estarmos com o GX, por exemplo, no cliente em produção.

O GeneXus, como sempre, nos proporciona uma solução, seja uma aplicação .Net ou Java rodando em ambiente Win ou Web.

Se sua aplicação for .Net Win, as informações de conexão ao banco de dados ficam guardadas no arquivo Client.exe.config, localizado dentro do diretório BIN da aplicação. Se for .Net Web, o arquivo que contém as informações de acesso ao banco de dados chama-se Web.Config, localizado dentro do diretório Web da aplicação.

Como alterar as informações de data base, user e password dos arquivos Client.exe.config e Web.Config?

Os dois arquivos estão no formato XML. Para alterar o nome do data base é simples, basta apenas editar o arquivo de configuração em qualquer editor de textos, procurar pela opção correspondente e salvar as alterações. Já as informaçõe de user e password estão criptografadas por questões de segurança, para alterá-las existem 2 opções.

Uma opção é utilizar um programa utilitário que está no site gxopen.com. Esse programa permite atualizar os arquivos de configuração Web.Config e Client.exe.config.

O link para download é: http://www.gxopen.com/gxopen/servlet/projectinformation?411

Outra opção é utilizar um utilitário chamado gxconfig.exe criado pela própria Artech. O gxconfig.exe fica no diretório BIN da aplicação e serve para alterar tanto o Web.Config quanto o Client.exe.config.

Como usar este utilitário?


Para editar o Web.Config (usado em aplicações Web), copie para o diretório BIN da aplicação o arquivo Web.Config e execute o gxconfig.exe. Aí basta você alterar os valores de servidor, base de dados, usuário, senha e gravar os dados.

Para editar o Client.exe.config (usado em aplicações Win), via prompt de comando, acesse o diretório BIN da aplicação e coloque o comando:

gxconfig.exe client.exe.config

Se não for colocado o client.exe.config como parâmetro, o utilitário irá buscar por default o arquivo Web.Config. Após a execução do comando acima, o utilitário será aberto e as informações de conexão ao banco de dados poderão ser modificadas.

Se sua aplicação for Java Win ou Web, as informações de conexão ao banco de dados ficam armazenadas no arquivo Client.cfg.

Como alterar o arquivo Client.cfg?

Para editar as informações de servidor, banco de dados, usuário e senha, faça o seguinte:


Copie os seguintes arquivos de sua KB Java: Client.cfg, GXUtils.jar e gxclassr.zip para um um determinado diretório, por exemplo, C:\Java. Via prompt de comando acesse esse diretório e execute o seguinte comando:

java -cp GXUtils.jar;gxclassr.zip com.genexus.ClientConfig

Atenção com maiúsuculas e minúscula, isto faz diferença, coloque o comando do jeito que foi colocado acima.

Executado o comando acima, um utilitário será aberto, onde é possível trocar as informações de conexão ao banco de dados dentre outras opções.

Esta dica é válida para as versões 9 e X do GeneXus. Espero ter ajudado. Até a próxima!

2 comentários:

Unknown disse...

Excelente dica, ajudou-me muito pra configurar de forma rápida o arquivo cliente.exe.config.

Anônimo disse...

Minha aplicação é .net com Win e não consigo alterar pois da uma mensagem que o objeto esta em uso.