Tempo aproximado para leitura: 00:04:56 min
Dúvida
Como acessar o ambiente Datasul por fora do menu?
Ambiente
Framework - Framework (Linha Datasul) - Progress OpenEdge - A partir do OpenEdge 12
Solução
Em algumas situações se faz necessário acessar o ambiente do produto Datasul, conectando os bancos de dados e os diretórios dos programas, sem executar o menu do produto. Isso é útil, por exemplo, para desenvolvimento ou compilação de programas.
Será necessário identificar qual é o arquivo PF - Parameter File utilizado pelo produto. Este arquivo geralmente existe dentro da seguinte estrutura:
<diretório do produto>\erp\scripts-xxxx
onde xxxx é o número da porta de comunicação com o servidor web, por exemplo:
c:\totvs\datasul\dts-0\erp\scripts-8080
O arquivo geralmente possui ou inicia com o nome datasul.pf. Para esses casos é útil utilizar uma cópia deste arquivo o qual conecte todos os bancos de dados e não apenas o banco emsfnd. Uma cópia do PF utilizado pelos Appservers pode ser utilizado, pois estes conectam todos os bancos.
Outro arquivo a ser utilizado é o de inicialização, cuja extensão é .ini. Ele também reside na mesma pasta do arquivo PF. A principal função deste arquivo é acessar os diretórios dos programas e também redimensionar os objetos nas telas gráficas de acordo com os padrões utilizados no produto Datasul.
Na sequencia localizar o diretório onde reside o executável client do OpenEdge. Este diretório pode ser obtido a partir do arquivo .ini, procurando pela variável DLC.
Com estas três informações, bastará criar um atalho ou executar diretamente o comando a seguir no prompt de comando do Windows:
<dir_openedge>\bin\prowin32.exe -basekey ini -ininame <caminho_e_arquivo.ini> -pf <caminho_e_arquivo.pf> -p <programa>
Exemplo:
c:\dlc117\bin\prowin32.exe -basekey ini -ininame c:\totvs\datasul\dts-0\erp\scripts-8080\datasul-progress.ini -pf c:\totvs\datasul\dts-0\erp\scripts-8080\datasul.pf -p _edit.p
O programa a ser configurado no parâmetro -p pode ser:
_edit.p, para executar o Procedure Editor;
_ab.p, para executar o AppBuilder;
_comp.p, para executar o Application Compiler;
ou qualquer outro programa desenvolvido na linguagem ABL - Advanced Business Language, antiga linguagem 4GL - Four Generation Language.
Um exemplo de programa ABL que pode ser utilizado no parâmetro -p deste atalho é o programa responsável por criar os alias do produto. Pode utilizar como base o programa de alias utilizado pelo servidor PASOE, porém eliminando a primeira linha que define um parâmetro de entrada, o qual não é utilizado neste atalho. No final do programa de alias, adicionar a chamada para o programa que deseja executar. No exemplo abaixo, após a criação dos alias, chama-se o Procedure Editor:
CREATE ALIAS mgadm FOR DATABASE mgcad NO-ERROR.
CREATE ALIAS mgind FOR DATABASE mgcad NO-ERROR.
/* demais alias utilizados pelo produto */
RUN _edit.p.
QUIT.
Neste tipo de atalho não está sendo executada nenhuma rotina de autenticação de usuários do produto nos bancos de dados. Por isso é possível que no momento da conexão com os bancos de dados seja solicitado para informar o usuário e a senha para cada banco. Nesses casos pode apenas pressionar a tecla ESC para prosseguir. Caso você possua segurança aplicada no banco de dados, onde esteja protegendo o acesso de algumas tabelas, será necessário então informar o usuário que você irá utilizar para acesso à elas. Se preferir pode passar este usuário e senha através dos parâmetros -U e -P na linha de conexão dos bancos, no arquivo de PF. No item saiba mais disponibilizamos uma documentação que contempla a proteção desta senha para não ficar exposta no arquivo.
Saiba mais
Consulte o artigo a seguir para mais informações Framework - Linha Datasul - TEC - Como criptografar a string de conexão com banco de dados Oracle
2 Comentários