Este módulo deve ser utilizado para criar as interfaces de integração do Hipercusto com outros sistemas e assim fazer uma "troca direta" de informações entre os dois sistemas.



  • A interface de integração acessará, diretamente, o banco de dados do Hipercusto assim como o banco de dados do outro sistema através da linguagem SQL (Structured Query Language). Dessa maneira é muito importante que a interface seja definida/criada por algum profissional de TI que conheça muito bem essa linguagem assim como o dicionário de dados dos dois sistemas.
  • A sintaxe/comandos suportados pela interface poderá variar em função do banco de dados selecionado.


Aqui você deverá seguir 4 passos básicos para definição/configuração da interface:


Passo 1: Definição

Aqui definimos o banco de dados que deverá ser acessado, o endereço do servidor, senha de aceso, etc. e, para isso, usamos as seguintes opções/definições:

  • Modo de funcionamento da interface: selecione Importação se o Hipercusto tiver que ler os dados do outro sistema para gravar no seu banco de dados ou então seleciona Exportação se o Hipercusto tiver que gravar informações no outro sistema. Já o modo Processamento indica que não haverá cópia de dados, apenas a execução de um script em Pascal (ou Basic).
  • Indique o tipo de banco de dados do outro sistema: aqui você deverá indicar qual é o padrão/tipo de banco de dados utilizados pelo outro sistema. Os bancos de dados suportados pelo Hipercusto são:
    • Access (Microsoft): versões 95, 97, 2000, 2003 e 2007
    • Advantage Database Server (ADS)
    • ASE (Adaptive Server Enterprise - antigo Sybase): versão 11.0 ou superior
    • dBase (DBF)
    • DB2 (IBM): versão 8.0 ou superior
    • InterBase (Embarcadero): versão 5.x ou superior e Firebird: versão 1.x ou 2.x
    • MySQL: versão 4.0 ou superior.
    • NexusDB: versão 3.0 ou superior.
    • ODBC: praticamente qualquer banco de dados com drivers nesse padrão
    • Oracle: versões 8, 8i, 9i, 10g e 11g
    • PostgreSQL: versão 7.1 até a versão 9.0
    • SQL Lite: versão 3.
    • SQL Server (Microsoft): versão 7, 2000, 2005 e 2008.
  • Definições de acesso ao banco de dados: aqui você deverá fornecer os dados necessários para acesso ao banco de dados do outro sistema:
    • Endereço de acesso ou nome do servidor: é a string (texto) de conexão que o Hipercusto deverá utilizar para acessar o outro banco de dados. Esse endereço varia de acordo com o tipo de banco de dados e você poderá obter essa informação com o administrador da sua rede. Por exemplo, para o Oracle o endereço poderia ser algo como: 192.168.0.25:1521:XE  enquanto que para o SQL-Server o endereço poderia ser VIRTUALXP-92688\SQLEXPRESS (lembre-se esses são apenas dois exemplos de strings de conexão).
    • Porta conexão: para o caso das conexões via TCP/IP aqui você poderá informar a porta que deverá ser utilizada para acessar o servidor. Se você deixar esse campo como 0 (zero) o Hipercusto usará a porta de conexão padrão para o banco de dados selecionado.
    • Nome do banco: é o nome do banco de dados onde estão as informações que deverão ser acessadas (ou onde os dados deverão ser gravados). Dependendo do tipo de banco de dados selecionado essa informação não precisará ser informada.
    • Usuário para conexão: é o nome de usuário (do banco de dados) que deverá ser utilizado na conexão. Dependendo do tipo de banco de dados essa informação pode não ser necessária.
    • Senha de conexão: é a senha do usuário informado.
    • Parâmetros adicionais de conexão: são informações complementares que deverão ser fornecidas para o driver que será utilizado na conexão ou para acesso ao banco de dados. Por exemplo, no caso do Oracle informar nesse campo o texto: DIRECT=True fará com o Hipercusto acesse diretamente o banco de dados sem necessidade do Client do Oracle.  Clique aqui para conhecer os parâmetros básicos para cada banco de dados.


Após ter especificado o tipo e os parâmetros de conexão ao banco de dados, clique no botão Testar Conexão para verificar se com os dados fornecidos o Hipercusto consegue acessar os servidor. Se ao pressionar esse botão aparecer alguma mensagem de erro, corrija o problema apresentado até que a conexão seja efetuada com sucesso.


Passo 2: Preparação dados

Nesta página você poderá informar o(s) script(s) SQL a ser(em) executado(s) para preparar os dados que deverão ser utilizados (esta aba será visualizada apenas para os scripts de importação/exportação de dados). Aqui você encontrará outras duas abas:

  • SQL Preparação dos dados na origem: indica o SQL que deverá ser executado na origem (de onde serão lidos os dados) antes de executar a transferência.
  • SQL Preparação dos dados no destino: indica o SQL que deverá ser executado no destino (local onde serão gravadas as informações) antes de executar a transferência.


Para cada um destes scripts existe uma opção onde você poderá informar se o SQL deverá ser executado através da instrução EXECUTE ou então se ele deverá ser aberto como se fosse um SELECT normal.


Outra definição que deverá ser fornecida é qual dos dois SQLs deverá ser executado primeiro.



  • Se o primeiro script for aberto (SELECT) então os dados retornados pelo mesmo poderá ser utilizado no segundo script como parâmetros. Por exemplo, você pode utilizar o primeiro script para identificar a última nota que foi processada e assim acessar as próximas notas para importação.
  • Nos dois scripts você pode usar os comandos básicos do SQL como: CREATE TABLE, INSERT, SELECT, UPDATE, etc.
  • Se for selecionado o modo "Processamento", algumas opções serão desabilitadas assim como algumas abas ficarão ocultas.


Passo 3: Transferência dados

Aqui você deverá informar os scripts SQLs que deverão ser executados para extração, pesquisa, inclusão e alteração dos dados (esta aba será visualizada apenas para os scripts de importação/exportação de dados). Existem diversos SQLs que poderão ser informados:

  • Seleção origem: é o SELECT que será utilizado para obter os dados da origem e que deverão ser transferidos para o destino. Aqui você também deverá informar que se ocorrer algum erro durante o processamento dos registros o processo deverá ser interrompido ou se o Hipercusto deverá prosseguir com o processamento.
  • Checagem destino: é o SELECT que deverá ser executado para verificar se o registro já existe no destino. Se não existir então será executado o script de inclusão dos dados e se existir será executado o script de alteração dos dados.
  • Inclusão origem: é o script que será executado na origem se o registro ainda não existir no destino.
  • Inclusão destino: é o script que será executado no destino se o registro não foi localizado no destino.
  • Alteração origem: é o script que será executado na origem se o registro ainda já existir no destino.
  • Alteração destino: é o script que será executado no destino se o registro foi localizado no destino.
  • Sinalizar erros origem: é o script que deverá ser executado na origem caso ocorra algum erro durante o processamento da interface.
  • Sinalizar erros destino: é o script que deverá ser executado no destino caso ocorra algum erro durante o processamento da interface.



  • Nos scripts você pode usar os comandos básicos do SQL como: CREATE TABLE, INSERT, SELECT, UPDATE, etc.
  • Se houver necessidade de utilizar os dados do script de seleção em qualquer um dos demais scripts basta utilizar o nome do campo desejado precedido por :  (dois pontos)
  • No caso dos SQLs de sinalização de erros você poderá, necessário, utilizar as seguintes variáveis:
    • :HIP_OPERACAO retorna o script onde ocorreu o erro, podendo ser:

IO indica que o erro ocorreu durante a inclusão na origem

ID indica que o erro ocorreu durante a inclusão no destino

AO indica que o erro ocorreu durante a alteração na origem

AD indica que o erro ocorreu durante a alteração no destino

    • :HIP_MENSAGEM retorna uma mensagem com erro que ocorreu. Essa mensagem será definida pelo seu banco de dados e assim você deverá consultar seu DBA ou a documentação do seu SGBD para identificar e corrigir o problema apresentado.
    • :HIP_REGISTROS indica o número de registros que foram processado até ocorrer o erro.



Passo 4: Processamento

Nesta parte você poderá informar scripts em PASCAL ou em BASIC que deverão ser processados durante a transferência dos dados. Você poderá informar os seguintes dados:

  • Executar na inicialização: é o código que deverá ser executado assim que a preparação dos dados (na origem e/ou no destino) for concluída. Aqui você também deverá informar se a importação deverá ser executada sempre ou se deverá ser verificado o retorno da variável especial EXIT_STATUS, isto é:
    • Não (sempre executar a interface): indica que a interface deverá ser executada independente do retorno da variável EXIT_STATUS.
    • Sim (executar apenas se o retorno for verdadeiro): indica que a interface deverá ser executada apenas se o conteúdo da variável EXIT_STATUS for verdadeiro.
  • Executar a cada registro processado: esse script será executado a cada registro processado.
  • Executar a cada inclusão: esse script será executado quando novos registros forem transferidos.
  • Executar a cada alteração: esse script será executado durante a modificação de registros.
  • Executar a cada erro: esse script será executado apenas se ocorrerem erros durante o processamento
  • Executar na finalização: esse script será executado ao término da transferência.
  • Linguagem utilizada na criação dos scripts: Aqui você indica se o código informado está em PASCAL ou em BASIC.



  • Sempre que possível, prefira executar scripts na linguagem PASCAL por ser uma linguagem estruturada.
  • Apesar do Hipercusto suportar scripts na linguagem BASIC, nosso suporte não dá suporte ao esclarecimento de dúvidas nesta linguagem.
  • A NatSam não oferece suporte na definição de scripts, pois isso exige conhecimento técnico em lógica e linguagem de programação.


Passo 5: Finalização

Aqui você deverá, se necessário, informar os scripts SQLs que deverão ser executados quando a transferência dos dados for encerrada e qual o nome da interface definida. Você deverá fornecer os seguintes scripts:

  • SQL Finalização (origem): é o SELECT que será executado na origem quando a transferência dos dados for concluída (esta aba será visualizada apenas para os scripts de importação/exportação de dados).
  • SQL Finalização (destino): é o SELECT que será executado no destino quando a transferência dos dados for concluída (esta aba será visualizada apenas para os scripts de importação/exportação de dados).
  • Sempre executar mesmo que tenham(m) ocorrido(s) erro(s): quando selecionado o SQL de finalização será executado mesmo que tenha ocorrido algum erro durante o processamento da interface  (esta opção será visualizada apenas para os scripts de importação/exportação de dados).
  • Executar apenas se não houve erro no processamento: quando selecionado o SQL de finalização será executa apenas se não ocorreu nenhum erro durante o processamento  (esta opção será visualizada apenas para os scripts de importação/exportação de dados).
  • Nome e observações da interface: é o nome com o qual a interface deverá ser salva. Você poderá, também, fornecer alguma observação para facilitar sua identificação.
  • Acesso: indica o direito (ou nível de acesso) que o usuário deve possuir para poder executar a interface.
  • Proteger a interface contra alterações utilizando a senha: se necessário, você poderá indicar uma senha de acesso que deverá ser fornecida sempre que for necessário alterar os dados da interface de uso. Se esse for o caso, digite a senha neste campo e depois digite-a novamente no campo "Confirme a senha".
  • Exibir mensagem de conclusão após a execução da interface?: indica se ao término da execução deverá ser exibida a mensagem "Interface executada com sucesso" (ou mensagem indicando que ocorreu algum erro), se deseja que seja exibida uma mensagem de conclusão somente quando ocorrer algum erro na execução da interface (nesse caso também será exibida a descrição do erro ocorrido) ou se não deve ser exibida nenhuma mensagem após a conclusão da interface.
  • Exigir que o usuário digite uma chave de autorização antes de iniciar o processamento da interface?  selecione "Sim" para obrigar que o usuário digite uma senha de execução antes do processamento da interface ou "Não" se desejar que a interface seja executada assim que o usuário selecioná-la.




  • Nos scripts você pode usar os comandos básicos do SQL como: CREATE TABLE, INSERT, SELECT, UPDATE, etc.
  • Lembre-se que você estará acessando diretamente os dados dos dois sistemas e assim poderá danificar alguma informação ou até todo o banco de dados se alguma coisa estiver errada no script.
  • Sempre faça um backup dos dois sistemas antes de processar qualquer interface de dados.
  • Para maiores informações sobre a sintaxe dos comandos que podem ser utilizados entre em contato com o administrador da sua rede ou o responsável pelo seu ERP.
  • A sintaxe dos comandos poderá variar em função do tipo de banco de dados utilizado.
  • Alguns bancos de dados podem exigir drivers/módulos adicionais instalados no seu micro e deverão ser fornecidos/configurados pela área de T.I. da sua empresa.
  • Se você fornecer uma senha de proteção para a interface e depois esquecer a senha informada, somente a equipe de suporte da NatSam poderá desproteger a interface. Além disso, ao indicar uma senha de proteção a interface será gravada em formato criptografado oferecendo assim maior segurança para o usuário.


Após ter definido todos os dados da interface, clique no botão "Salvar e Sair" para registrá-lo no sistema. Repare que em todas as telas existe um botão chamado Dicionário que permite acionar o dicionário de dados do Hipercusto e assim conhecer os campos/estruturas do banco de dados do sistema.


  • Se você não encontrar o botão "Dicionário" nas telas deve ser porque a sua senha de acesso não tem direito a acessar/utilizar o módulo de consulta ao dicionário de dados do Hipercusto.


Se você "clicar" com o botão direito em cima dos textos dos scripts, será exibido se seguinte menu suspenso (popup) com as seguintes opções:

  • Selecionar tudo: seleciona todo o script
  • Copiar: copia o texto que foi marcado para a área de transferência do Windows
  • Colar: cola o texto da área de transferência do Windows para a posição onde está o cursor.
  • Apagar: apaga o script.
  • Salvar script: salva o script em disco.
  • Carregar script: carrega um script de um arquivo em disco.
  • Destacar palavras chave: quando ativo, os comandos e palavras chaves serão exibidas em uma cor diferente o que facilita a digitação do script.
  • Salvar e sair: salva as modificações realizadas e sai do módulo de definição de interface. Se os parâmetros de acesso ao servidor do ERP ainda não foram testados, será exibida mensagem perguntando se deseja validar os dados de conexão fornecidos.
  • Salvar e sair (sem verificar a conexão): salva as modificações realizadas e sai do módulo de definição de interface (sem efetuar qualquer teste de conexão com o outro banco de dados).
  • Sair sem Salvar: encerra o módulo de definição da interface sem salvar as modificações realizadas.