Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Realize as configurações básicas, campos importantes:
  • Módulo Web = WS - TOTVS Linha Protheus Web Services
  • Nome da Instância = ws
  • Diretório Raiz das Imagens (Web Path) = Diretório da Pasta Web onde o sistema irá criar a pasta "ws"
  • Selecione o Environment = Nome do Ambiente
  • Flag para habilitar processos na inicialização do Servidor
    Realize a Configuração de Host x Empresas/Filiais, campos importantes:
  • Host = Server e porta dos Web Services (Deve ser informada a porta informada na Configuração HTTP/FTP)
  • Selecione a Empresa/Filial = Empresa e Filial de acesso (Para configuração Multifilial, consulte a respectiva aba)
  • Clique em "Relacionar" e em "Avançar"
  •  Realize a Configuração de Usuários, onde irá definir o número mínimo e máximo de usuários para acesso
  • Finalizar e confirmar a configuração.

    Após as configurações acima, o sistema irá inserir as informações de acesso aos Web Services no arquivo AppServer.ini do Protheus, verifique se as informações estão de acordo com o exemplo abaixo, caso não estejam realize ajustes (Lembrando que a Porta e o Nome do Ambiente serão os que preencheu durante a configuração):
    Deck of Cards
    effectDuration0.5
    idIntegração Mensagem única
    effectTypefade
    label Conteúdo Única carddefault
    Card
    effectDuration0.5
    idIntegração via Mensagem única
    labelInformações Gerais
    Expandir
    titleTabelas

    Tabelas utilizadas na Integração EAI:

    • De/Para de Empresas/Filiais Mensagem única (XXD)
    • De/Para de Conteúdos Mensagem Única (XXF)
    • Transações E.A.I. (XX3)
    • Adapters E.A.I. (XX4)
    Expandir
    titleParâmetros

    Parâmetros utilizados na Integração EAI:

    • MV_EAIMETH: Não deve ser alterado
    • MV_EAIUSER
    • MV_EAIPASS
    • MV_EAIURL2: Endereço do WS para comunicação. Podemos informar a Rota da integração neste parâmetro ou através da rotina CFGA020.  Saiba mais: Roteamento E.A.I. Protheus (CFGA020 - SIGACFG)
    • MV_EAIWS: Não precisa ser alterado 

    Dica
    titleIntegração RM TOP x Protheus

    A integração do Top RM com o Protheus envolve o módulo Gestão de Projetos (SIGAPMS), neste módulo não é necessário realizar alguns cadastros de De/Para na tabela XXF e sim configurar alguns parâmetros. 

    Lista dos parâmetros que envolve as integrações deste módulo: Parâmetros da Integração

    Card
    defaulttrue
    idIntegração Via Mensagem única
    labelAdapters (E.A.I.)

    Adapters

    Expandir
    titleAdapters

    Os Adapters são responsáveis por realizar o processamento das mensagens enviadas e recebidas, possibilitando a inclusão, alteração e exclusão de dados.
    Veja a Lista Completa dos Adapters utilizados na integração E.A.I (Enterprise Application Integration).

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de cadastro do Adapter em: 01. Cadastro do Adapter

     

    As integrações via Mensagem Única propõem dois modelos de envio e recebimento de mensagens: 

    • Síncronas: A
     mensagem
    • mensagem é enviada e o sistema que enviou aguarda o processamento da mensagem pelo receptor
    .
    • ;
    • Assíncronas: A mensagem é enviada e o sistema que a enviou não aguarda o seu processamento. Posteriormente a mensagem será processada no receptor.


    Aviso
    titleAtenção

    O modelo de mensagem que será utilizado na integração deve ser avaliado com muito cuidado. Apesar do modelo síncrono parecer o mais adequado para uma integração, isto não é de todo verdade. Em um modelo síncrono deve ser levado em consideração o tempo de processamento: O processamento do sistema que envia, a velocidade do trânsito de dados da rede e o tempo de processamento e resposta do receptor.
    Isto pode acarretar um tempo de resposta ao usuário muito maior do que o normal, o que pode transformar a integração de solução ao problema. Já o modelo
    assíncrono, por não aguardar o retorno do processamento do receptor torna o processo mais rápido, porém, neste modelo de mensagem deve-se levar em consideração que o dado será gravado no sistema que envia a mensagem e que o processamento no receptor ocorrerá posteriormente.

    Desta maneira, em algumas situações os dados irão existir no sistema de envio, mas enquanto não forem processados no receptor eles não existirão lá.

    Card
    defaulttrue
    effectDuration0.5
    idIntegração Via Mensagem única
    labelDe/Para de Empresa/Filial
    Expandir
    titleDe/Para de Empresas/Filiais

    O Cadastro de De/Para de empresas/filiais irá definir quais empresas e filiais serão integradas entre os dois sistemas.

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de cadastro do De/Para de Empresas/Filiais: 02. De Para de Empresas Filiais

    No XML é necessário identificar a Aplicação de Origem, a Empresa e a Filial para cadastrar o De/Para. As tags a serem verificadas são:

    • SourceApplication = Aplicação de Origem (XXD_REFER)
    • CompanyId = Empresa (XXD_COMPA)
    • BranchId = Filial (XXD_BRANCH)
    Card
    Expandir
    title
    defaulttrue
    effectDuration0.5
    idIntegração Mensagem única
    De/Para de

    De/Para de Mensagem Única 

    Mensagem
    Única

    Na maioria das vezes, os códigos dos registros utilizados nos sistemas que se comunicam via Mensagem Única não são os mesmos, a XXF é a tabela que ira guardar os códigos para relacionar os registros, por exemplo um cliente pode possuir o código no Protheus, e no RM esse mesmo cliente possui o código C0100001. Por isso o sistema realiza o cadastro de um "De/Para de Mensagem Única"

    Ao realizar a inclusão de um cadastro, o sistema verifica se já existe um "De/Para de Mensagem Única", caso já exista, o sistema entende que trata-se de uma alteração, caso não exista, trata-se de uma inclusão, então ele cria automaticamente o "De/Para de Mensagem Única" (XXF).

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de cadastro do De/Para de Mensagem Única (XXF): De Para de Mensagem Única

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.

    Caso trate-se de uma inclusão que referencia códigos de outros cadastros, esses códigos necessitam de um "De/Para de Mensagem Única", por exemplo, ao incluir um Pedido de Vendas você precisa referenciar um código de Produto e um código de cliente, mas, nesse momento, você não está incluindo o cliente ou o produto, você está incluindo o Pedido, portanto o cliente e o produto precisam ter um "De/Para de Mensagem Única" (XXF) cadastrado. 

    Expandir
    title
    true
    effectDuration0.5
    idTestes de Integrações via XML
    labelWS - WebServices
    Fontes de Integração

    Todos os fontes de integração contém a letra "I" no final do nome da rotina, fontes com processamento a parte em JSON possuem a letra "O" ou "Json" no final.

    Exemplos:

    • A rotina de Pedidos de Venda tem seu fonte com nome "MATA410";
    • Na integração de Pedido de Venda via XML, o fonte que trata a integração chama-se "MATI410";
    • Na integração de Pedido de venda via JSON: MATI410O
    Card
    idIntegração Mensagem única
    labelFontes

    Fontes de Integração:

    T

  • Realize o Download dos Arquivos de Portais (web_files) do Portal do Cliente
  • Inclua uma pasta web dentro da Protheus Data do Sistema e insira os web_files
  • Selecionar a opção: <HTTP> e clicar na barra superior <Editar> conforme exemplo
  • O sistema apresentará a tela para Configuração da Seçãoonde os principais campos são:
  • Flag para Habilitar o Protocolo
  • Path de Arquivos = Caminho da Pasta Web
  • Ambiente = Nome do Ambiente
  • Porta de Conexão = Porta de configuração dos Serviços
    Card
    defaulttrue
    effectDuration0.5
    idTestes de Integrações via XML
    labelWS - WebServices

    Configurando Web Services

    A configuração inicia-se habilitando o serviço HTTP e configurando a porta que todos os outros serviços dependentes deste irão utilizar para a publicação das informações:

    • Acesse o Wizard de configuração dos Serviços;
    • Em Servidor Internet (HTTP/FTP), verifique se o serviço de HTTP já existe, confirme se está habilitado e para qual porta está configurada. Pois estas são informações indispensáveis para o correto funcionamento dos WebServices e Portais.
    • Caso não tenha o Servidor Internet <HTTP> criado, é necessário seguir o procedimento abaixo:

    Expandir
    titleConfigurando HTTP/FTP
    • Realize o Download dos Arquivos de Portais (web_files) do Portal do Cliente
    • Inclua uma pasta web dentro da Protheus Data do Sistema e insira os web_files
    • Selecionar a opção: <HTTP> e clicar na barra superior <Editar> conforme exemplo
    • O sistema apresentará a tela para Configuração da Seçãoonde os principais campos são:
      1. Flag para Habilitar o Protocolo
      2. Path de Arquivos = Caminho da Pasta Web
      3. Ambiente = Nome do Ambiente
      4. Porta de Conexão = Porta de configuração dos Serviços

    Dica
    titleImportante

    Na configuração da Seção, inserimos como exemplo a porta 92, porém ela pode ser alterada caso prefira.

    Caso definida a porta padrão do serviço HTTP que é a 80, não é necessário especificá-la na configuração do WS e Portais.


    Basta confirmar e gravar as configurações


    Expandir
    titleWS TOTVS Linha Protheus Web Services
    • Realize as configurações básicas, campos importantes:
      1. Módulo Web = WS - TOTVS Linha Protheus Web Services
      2. Nome da Instância = ws
      3. Diretório Raiz das Imagens (Web Path) = Diretório da Pasta Web onde o sistema irá criar a pasta "ws"
      4. Selecione o Environment = Nome do Ambiente
      5. Flag para habilitar processos na inicialização do Servidor

    • Realize a Configuração de Host x Empresas/Filiais, campos importantes:
      1. Host = Server e porta dos Web Services (Deve ser informada a porta informada na Configuração HTTP/FTP)
      2. Selecione a Empresa/Filial = Empresa e Filial de acesso (Para configuração Multifilial, consulte a respectiva aba)
      3. Clique em "Relacionar" e em "Avançar"

    •  Realize a Configuração de Usuários, onde irá definir o número mínimo e máximo de usuários para acesso

    Finalizar e confirmar a configuração.


    Após as configurações acima, o sistema irá inserir as informações de acesso aos Web Services no arquivo AppServer.ini do Protheus, verifique se as informações estão de acordo com o exemplo abaixo, caso não estejam realize ajustes (Lembrando que a Porta e o Nome do Ambiente serão os que preencheu durante a configuração):

    Expandir
    titleAppServer.ini

    [HTTP]

    ENABLE=1

    PORT=81


    [localhost:92/ws]

    ENABLE=1

    PATH=c:\seuambiente\Protheus_Data\web\ws

    ENVIRONMENT=12.1.025

    INSTANCENAME=ws

    RESPONSEJOB=

    Configurando Web Services

    A configuração inicia-se habilitando o serviço HTTP e configurando a porta que todos os outros serviços dependentes deste irão utilizar para a publicação das informações:

  • Acesse o Wizard de configuração dos Serviços;
  • Em Servidor Internet (HTTP/FTP), verifique se o serviço de HTTP já existe, confirme se está habilitado e para qual porta está configurada. Pois estas são informações indispensáveis para o correto funcionamento dos WebServices e Portais.
  • Caso não tenha o Servidor Internet <HTTP> criado, é necessário seguir o procedimento abaixo:
    Expandir
    titleConfigurando HTTP/FTP
    Dica
    titleImportante

    Na configuração da Seção, inserimos como exemplo a porta 92, porém ela pode ser alterada caso prefira.

    Caso definida a porta padrão do serviço HTTP que é a 80, não é necessário especificá-la na configuração do WS e Portais.

    Basta confirmar e gravar as configuraçõesConfigure o módulo WS em Módulos da Web:
    Expandir
    titleWS TOTVS Linha Protheus Web Services
    Expandir
    titleAppServer.ini

    [HTTP]

    ENABLE=1

    PORT=81

    [localhost:92/ws]

    ENABLE=1

    PATH=c:\seuambiente\Protheus_Data\web\ws

    ENVIRONMENT=12.1.025

    INSTANCENAME=ws

    RESPONSEJOB=JOB_WS_9901

    DEFAULTPAGE=wsindex.apw


    [JOB_WS_9901]

    TYPE=WEBEX

    ENVIRONMENT=12.1.025                                         

    INSTANCES=1,1

    SIGAWEB=WS

    INSTANCENAME=ws

    ONSTART=__WSSTART

    ONCONNECT=__WSCONNECT

    LOGPROFILE = 0

    PREPAREIN=99,01

    SECURITY=0

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de configuração dos Web Services: Configurando os Web Services

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no Navegador do Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo e a qualidade será bem melhor.

    A partir da release 12.1.33, torna-se obrigatório o uso da chave SECURITY = 0 na configuração dos WebServices no appserver.ini do AppServer: https://tdn.totvs.com/x/aiErI

    Aviso
    titleAlerta de risco

    Fique atento ao utilizar o parâmetro de configuração com a chave Security=0, pois isso fará com que as integrações (APIs) não exijam autenticação, consequentemente dados do seu ambiente poderão ser consultados sem qualquer controle de autorização.

    ENVIRONMENT=12.1.025                                         

    INSTANCES=1,1

    SIGAWEB=WS

    INSTANCENAME=ws

    ONSTART=__WSSTART

    ONCONNECT=__WSCONNECT

    LOGPROFILE = 0

    PREPAREIN=99,01

    SECURITY=0

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de configuração dos Web Services: Configurando os Web Services

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no Navegador do Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo e a qualidade será bem melhor.

    A partir da release 12.1.33, torna-se obrigatório o uso da chave SECURITY = 0 na configuração dos WebServices no appserver.ini do AppServer: https://tdn.totvs.com/x/aiErI

    Aviso
    titleAlerta de risco

    Fique atento ao utilizar o parâmetro de configuração com a chave Security=0, pois isso fará com que as integrações (APIs) não exijam autenticação, consequentemente dados do seu ambiente poderão ser consultados sem qualquer controle de autorização.

    SoapUI

    É uma ferramenta de mercado onde conseguimos simular o envio do XML na integração via Mensagem Única.

    Utilizamos o SoapUI para enviar o arquivo XML, simulando o envio de outros sistemas (RM ou LOGIX, por exemplo) para o Protheus.

    Link para baixar o Soap: https://www.soapui.org/downloads/latest-release/
    Card
    defaulttrue
    idIntegração Mensagem única
    labelSoapUI

    SoapUI

    É uma ferramenta de mercado onde conseguimos simular o envio do XML na integração via Mensagem Única.

    Utilizamos o SoapUI para enviar o arquivo XML, simulando o envio de outros sistemas (RM ou LOGIX, por exemplo) para o Protheus.

    Link para baixar o Soap: https://www.soapui.org/downloads/latest-release/

    Dica
    titleEXEMPLO

    Veja o vídeo do processo de configuração do SOAPUI: Configurando a ferramenta SoapUI

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.

    Nota
    titleImportante:
    • A seguinte Tag tem que ser acrescentada:


    <![CDATA[


    (XML Conteúdo que irá dentro da TAG)


    ]]>


    • Não esqueça de salvar o Novo Projeto, caso feche o sistema perde inclusive a integração.
    Card
    defaulttrue
    idIntegração Mensagem única
    labelSoapUI
    Dica
    titleEXEMPLO

    Veja o vídeo do processo de configuração do SOAPUI: Configurando a ferramenta SoapUI

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.

    Nota
    titleImportante:
    • A seguinte Tag tem que ser acrescentada:

    <![CDATA[

    (XML Conteúdo que irá dentro da TAG)

    ]]>

    • Não esqueça de salvar o Novo Projeto, caso feche o sistema perde inclusive a integração.
    Card
    idIntegração Mensagem única
    labelFontes

    Fontes de Integração:

    Todos os fontes de integração contém a letra "I" no final do nome da rotina, fontes com processamento a parte em JSON possuem a letra "O" depois da letra "I" de integração.

    Exemplo na inclusão manual do Protheus, rotina de pedidos de venda: MATA410

    Exemplo na integração de Pedido de venda via XML: MATI410

    Exemplo na integração de Pedido de venda via JSON: MATI410O



    Card
    idIntegração Mensagem única
    labelComo extrair XML de Envio/Reposta

    Extraindo o XML do Protheus:


    1 - Acesse o ambiente SIGACFG: Ambiente - Schedule - Adapter E.a.i.




    Na integração do Software com o Protheus, são criados os arquivos de transações.


    2 - Selecione o arquivo que integrou e para extrair clique na lupa  . Será exibido as opções para extrair:

    • ENVIO: Visualizar mensagem original: XML que a aplicação de integração envia ao Protheus.
    • RESPOSTA: Visualizar mensagem de resposta: XML que o Protheus envia ao aplicativo de integração.



    Nota
    titleIdentificando o XML:

    Através da Tag <Product> consegue visualizar o Software que esta recebendo ou enviando. Exemplo:

    XML de envio (original): <Product version="12.1.18.0" name="RM"/>

    XML de recebimento (resposta): <Product version="12" name="PROTHEUS"/>

    Card
    idIntegração Mensagem única
    labelArquivos (.XML)

    Exemplo de XML para testes:


    Adapter E.A.I. - (XX4_MODEL)Rotina normal  |  Rotina de integração correspondente - (XX4_ROTINA)Arquivo .xml para testes - Download
    SALESORDERMATA410  |  MATI410
    PROJECTPMSA200  |  PMSI200XML_PROJECT
    SUBPROJECTPMSA201  |  PMSI201XML_SUBPROJECT
    STEPPROJECTPMSA201A  |  PMSI201A XML_STEPPROJECT
    TASKPROJECTPMSA203  |  PMSI203XML_TASKPROJECT



    Card
    idIntegração Mensagem única
    labelTestando (.XML)

    Exemplos de Testes (XML):

    Para iniciar os testes é necessário que tenha realizado as etapas:

    1. Cadastro do Adapter
    2. De/Para de Empresas e Filiais
    3. De/Para de Mensagem Única (Se for o teste da rotina MATA410)
    4. Configurando os Web Services
    5. Configurando o SOAPUI

    Dica
    titleObservação

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.


    Simulação da integração:

    Aviso
    titleImportante

    Os arquivos .XML utilizados nos testes estão na aba "Exemplos de XML" e o Link para Download do SOAPUI está na aba "Soap UI"

    Card
    idIntegração Mensagem única
    labelTestando (.JSON)

    Exemplos de Testes (Json):

    Para iniciar os testes é necessário que tenha realizado as etapas:

    1. Cadastro do Adapter
    2. De/Para de Empresas e Filiais
    3. Exemplo de REST
    4. Configuração do REST
    5. Configurando o SOAPUI

    Dica
    titleObservação

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.

    Aviso
    titleImportante

    Caso seja necessário a utilização de um Json enviado pelo cliente no teste, é necessário criar um De/Para de Mensagem única para os códigos referenciados no cadastro.

    Exemplo: Código de Vendedor no campo A1_VEND, é necessário criar um de/para de mensagem única usando o " VendorInformationInternalID" como "Valor Externo" e no "Valor interno" é preciso informar a empresa, a filial e o código do vendedor como neste exemplo.


    Exemplos de Arquivos Json para teste:


    Card
    idIntegração Mensagem única
    labelTestando Envio (.JSON)

    Exemplos de Testes Envio (Json):

    Para iniciar os testes é necessário que tenha realizado as etapas:

    1. Cadastro de Rotas EAI
    2. Cadastro do Adapter
    3. Cadastro do Schedule
    4. Cadastro do Agent
    5. Teste de Envio

    Dica
    titleObservação

    O vídeo está no Google Drive do Suporte FAT / SERV / JUR, caso execute no navegador Google Chrome, a qualidade do vídeo pode ficar mais baixa, sendo esse o caso, é possível fazer o Download do arquivo para superior qualidade.

    Card
    defaulttrue
    effectDuration0.5
    idLogID
    labelLog de integração

    Como gerar log registro de integração


    1 - Vá em seu appserver.ini na chave/bloco que carrega o nome do JOB do WebServices [JOB_WS_XXXX]

    2 - Inclua uma linha: "PROFILE=1" e depois salve o arquivo (Atalho: CTRL + S).


    Aviso
    titleAlerta de risco

    Fique atento ao utilizar o parâmetro de configuração com a chave Security=0, pois isso fará com que as integrações (APIs) não exijam autenticação, consequentemente dados do seu ambiente poderão ser consultados sem qualquer controle de autorização.



    3 - Ao integrar/tentar integrar, será gerado um arquivo .txt de log na pasta protheus > protheus_data > wsprofiler:


    OBS: Para não gerar um log a cada interação, basta deixar: "PROFILE=0"




    ...