WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Cenários de Entrada de BAPI

No SAP, você pode chamar funções em outros aplicativos ou sistemas SAP que estão registrados com o SAP como servidores Remote Function Call (RFC). No WebSphere Message Broker, é possível registrar o adaptador SAP com o SAP como um servidor RFC para que ele aceite chamadas síncronas e assíncronas do SAP.

Integrando o SAP com um Sistema com uma Interface Síncrona

No SAP, uma interface BAPI é uma chamada de função. Se um sistema estiver conectado ao SAP como um servidor RFC, é possível usar a interface BAPI para definir a interface na qual um programa em execução no SAP pode chamar um sistema externo. O sistema externo é identificado no SAP por seu valor RFCDestination, que está ligado a um ID de programa na administração do SAP. O ID de programa é especificado pelo sistema externo quando ele se conecta pela primeira vez ao SAP.

Usando o WebSphere Adapter para SAP, um fluxo de mensagens pode se conectar ao SAP como um Servidor RFC configurando o adaptador com o ID do programa relevante e implementando o fluxo de mensagens no broker. Após a implementação, o fluxo de mensagens pode receber chamadas de função síncronas usando a interface BAPI.

O Identificador de Resposta

Os parâmetros de importação BAPI são recebidos pelo adaptador e propagados a partir de um nó SAPInput como uma estrutura em árvore de mensagens. Os parâmetros de exportação BAPI são propagados para um nó SAPReply como uma estrutura de árvore de mensagens. Depois, o adaptador envia de volta os parâmetros de exportação para o programa SAP de chamada. Neste caso, o nó SAPReply está geralmente no mesmo fluxo que o nó SAPInput. O nó SAPInput fornece um ID exclusivo (o identificador de resposta) para cada chamada BAPI. O identificador de resposta é propagado para o nó SAPReply (no ambiente local) para indicar à qual chamada BAPI ele está respondendo.

Se não existir nenhum identificador de resposta no ambiente local, o nó SAPReply usará automaticamente o identificador de resposta do nó SAPInput que acionou a execução atual do fluxo de mensagens. Se o fluxo for acionado por algo que não seja um nó SAPInput, ou se ocorrer uma quebra no fluxo, um erro será emitido. Uma exceção não-manipulada no fluxo de mensagens causa uma falha do sistema no SAP.

Mesmo se a BAPI não esperar nenhum parâmetro de saída, a mensagem (vazia) deverá ser propagada para o nó SAPReply.

É possível processar dois callouts simultâneos a partir do SAP, configurando o fluxo de mensagens com uma instância adicional.

Cenário 1

O diagrama a seguir representa um fluxo de mensagens no qual o WebSphere Message Broker fornece um link entre o SAP e um aplicativo de destino (neste caso, o DB2®). O programa SAP requer dados de resposta, portanto, ele bloqueia processamento adicional até que a chamada seja completada.

O Diagrama Ilustra as seguintes Etapas.
  1. O programa SAP faz uma chamada BAPI para o WebSphere Message Broker.
  2. O WebSphere Message Broker converte a chamada em uma chamada SQL.
  3. O WebSphere Message Broker passa a chamada para o DB2.
  4. O DB2 processa o SQL e retorna o resultado para o WebSphere Message Broker.
  5. O WebSphere Message Broker converte o resultado do SQL em uma resposta BAPI e envia a resposta para o SAP.
  6. O programa SAP processa a próxima linha de código.

Cenário 2

O diagrama a seguir também representa um fluxo de mensagens no qual o programa SAP requer dados de resposta, mas neste cenário, as chamadas entre o WebSphere Message Broker e o aplicativo de destino (neste caso, o WebSphere MQ) são assíncronas. O sistema SAP bloqueia processamento adicional até que a chamada seja completada. Se o valor da propriedade de SAP Máximo de tempo de espera de cliente for insuficiente ou se for configurado para 0, um erro de tempo limite pode ser gerado. Para obter mais informações sobre a propriedade Máximo de tempo de espera de cliente do Nó de Entrada de SAP, consulte Máximo de tempo de espera de cliente (s). Ao usar o nó SAPReply em um fluxo diferente do nó SAPInput, implemente o nó SAPReply no mesmo grupo de execução que o nó SAPInput.

O Diagrama Ilustra as seguintes Etapas.
  1. O programa SAP faz uma chamada BAPI para o WebSphere Message Broker.
  2. O WebSphere Message Broker converte os parâmetros de importação em um formato de mensagem que é reconhecido pelo aplicativo de destino.
  3. O WebSphere Message Broker coloca essa mensagem em uma fila de pedidos.
  4. O aplicativo de destino recebe a mensagem de pedido da fila, processa-a e coloca uma mensagem de resposta na fila de resposta.
  5. O WebSphere Message Broker obtém a mensagem de resposta da fila.
  6. O WebSphere Message Broker converte a mensagem de resposta para os parâmetros de exportação BAPI e envia a resposta para o SAP.

Cenário 3

O diagrama a seguir representa uma chamada assíncrona do SAP para o WebSphere Message Broker, e uma chamada assíncrona do WebSphere Message Broker para um aplicativo de destino. Este cenário mostra como você pode combinar o processamento de entrada que é descrito neste tópico com o processamento de saída para obter o mesmo resultado que os cenários 1 e 2. Para obter informações adicionais sobre o processamento de saída, consulte Processamento de Saída para a Interface BAPI.

O Diagrama Ilustra as seguintes Etapas.
  1. O programa SAP faz uma chamada BAPI para o WebSphere Message Broker, armazena informações relevantes em uma tabela de banco de dados e continua o processamento na próxima linha de código.
  2. O WebSphere Message Broker converte os parâmetros de importação em um formato de mensagem que é reconhecido pelo aplicativo de destino.
  3. O WebSphere Message Broker coloca essa mensagem em uma fila de pedidos.
  4. O aplicativo de destino obtém a mensagem de pedido da fila e processa-a.
  5. O WebSphere Message Broker obtém a mensagem de resposta da fila.
  6. O nó SAPRequest envia a mensagem para o sistema SAP, solicitando uma atualização no SAP.
  7. O programa SAP consulta as informações que estão armazenadas na tabela de banco de dados e faz a atualização solicitada.

Erros e Avisos

  • Se um nó SAPReply for implementado mas nenhum nó SAPInput for implementado nesse grupo de execução, um aviso será gravado no syslog ou no Windows Event Viewer.
  • Se o nó SAPReply for fornecido com um identificador de resposta que não corresponde a nenhuma chamada BAPI neste grupo de execução, será emitido um erro.
  • Se o mesmo identificador de resposta for enviado para dois nós SAPReply, o segundo nó receberá uma mensagem de erro.
  • Se um programa SAP tentar chamar um BAPI que está usando o valor RFCDestination do broker, mas esse BAPI não foi descoberto para esse adaptador, um erro será gravado no syslog ou no Windows Event Viewer e uma mensagem de erro é enviada de volta para o programa SAP de chamada.
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:30:48


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | bc22020_