O adaptador processará um pacote de IDocs como uma unidade de trabalho se
todos os IDocs no pacote tiverem o mesmo tipo de IDoc. Todos os IDocs no pacote de IDocs
fazem parte de uma transação XA em um terminal. O processamento de eventos é semelhante
a um único IDoc em relação ao mecanismo de recuperação de eventos;
o pacote de IDocs é considerado uma única unidade de trabalho, portanto, uma falha registrada
pelo terminal para qualquer IDoc causa falha de todo o pacote. Uma falha requer
que todos os IDocs no pacote de IDocs sejam enviados para o terminal novamente.
O adaptador processa um evento de entrada para um pacote não-dividido
de acordo com o seguinte procedimento:
- Quando o sistema SAP envia um ID de transação para o adaptador, o adaptador verifica
o status do evento e executa uma das seguintes ações:
- Se este for um novo evento, o adaptador armazenará um EVNTID (que corresponde
ao ID de transação) junto com um status de 0 (Criado)
na tabela de recuperação de eventos.
- Se o status do evento for -1 (Recuperar), o adaptador atualizará
o status para CRIADO.
- Se o status do evento for 1 (Executado), o adaptador retornará
uma indicação de êxito ao sistema SAP.
- O sistema SAP envia o pacote de IDocs para o adaptador, que analisa esse pacote IDoc, converte-o em uma matriz de objetos IDoc e armazena-o na memória.
- O adaptador envia os objetos de negócios para o terminal. O adaptador pode entregar
objetos para terminais que suportam transações, bem como para terminais que
não suportam transações.
- Se ocorrer uma exceção durante o processamento do evento pelo adaptador ou se o terminal
gerar uma exceção, o status do evento será atualizado para -1 (Recuperar).
- Se não ocorrer nenhuma exceção, o sistema SAP desempenhará as seguintes tarefas:
- Ele enviará uma chamada COMMIT para o adaptador e o evento será atualizado para 1 (Executado).
- Ele enviará uma chamada CONFIRM para o adaptador.
O adaptador então excluirá os registros com um status 1 (Executado)
e registrará um evento CEI (Common Event Infrastructure) que pode ser utilizado
para fins de rastreio e auditoria.