Integração de Banco via Rotinas de Importação
Este artigo descreve os procedimentos novos necessários para que se possa fazer a integração de dados via rotinas de importação.
Conceito
Após a implementação do PAF-ECF tornou-se necessário exercer um controle maior com relação às alterações de dados nas tabelas. Por isso, o Totall Commerce passou a exigir uma identificação de quem está "mandando" dados para o banco através das rotinas de importação. Para que parceiros realizem essa tarefa, existem as seguintes formas:
- RegistraAcesso: registrando a sessão do banco de dados com uma assinatura que só os sistemas da Totall ou parceiros possuem.
- Totall Import: sistema que permite que a importação de dados seja agendada no Windows.
RegistraAcesso
Método responsável por registrar o acesso de parceiros no sistema.
Ele deve ser executado a cada conexão com o banco de dados.
Parâmetro | Significado | Tipo | Domínio |
---|---|---|---|
CODEMP | Código Empresa | INTEGER | (solicitar a Totall) |
HASHCONEXAO | HASH da conexão da Empresa | VARCHAR | |
CODUID | Código de Registro no Sistema (Gerado por ConectaUID) | INTEGER | |
USEROS | Usuário do SO | VARCHAR | |
DATOPE | Data | DATE | |
NOMMAQ | Estação | VARCHAR | |
VERBAS | Versão da Base | INTEGER | |
VERSIS | Versão do Sistema | VARCHAR | |
NOMSIS | Módulo | VARCHAR | |
SESSION_ID | Sessão | INTEGER |
Procedimentos para Assinatura
1. Utilizar função ConectaUID. No caso dos parceiros, esta função deve ser utilizada para realizar a conexão ao banco de dados, e sua chamada pode ser feita como abaixo:
pConecta := SELECT ConectaUID() FROM dual;
2. Gerar Hash:
pSenhaFixa: É uma constante de segurança enviada para o parceiro por e-mail.(solicitar a Totall)
pHashConexao := md5(pConecta || pSenhaFixa)
3. Utilizar função RegistraAcesso:
SELECT RegistraAcesso( 'pCodemp', 'pHashConexao', 'pCODUID', 'pUSEROS', 'pDATOPE', 'pNOMMAQ', 'pVERBAS', 'pVERSIS', 'pNOMSIS', userenv('sessionid')) FROM dual;
4. Executar rotinas de importação. Com o acesso registrado, é possível rodar as rotinas de importação sem nenhum problema.
BEGIN IMPORTA_PRO(...); IMPORTA_PRE(...); etc.END;