Páginas

quarta-feira, 13 de janeiro de 2016

COMO IMPLEMENTAR O CENÁRIO INBOUND B2B DA NF-e

Introdução
Este documento demonstra uma solução utilizada no processo Inbound B2B do GRC NF-e 10.0, que contempla o desenvolvimento de um cenário "MailTOProxy" no PI 7.31 utilizando Java Mapping para o Multi-Mapping com ccBPM. Leitura do Mailbox e validação apenas dos anexos(1..N) com extensão *.XML relacionados à documentos de NF-e ou CT-e e seus respectivos eventos, incluindo a nova versão 3.10.

Enterprise Services Repository
Process Integration Scenario
SCN.jpg
Abaixo estão detalhados os Service Interface utilizados em cada Action do Scenario:
SCN01.jpg
SI: INB2B_Mail_OB – Category: Outbound – Type(ED): Mail (http://sap.com/xi/XI/Mail/30)
SI: INB2B_Mail – Category: Abstract – Type(ED): Mail (http://sap.com/xi/XI/Mail/30)
SCN02.jpg
SI: INB2B_NFeResponse – Category: Abstract – Type(ED): nfeProc (http://sap.com/xi/NFE/006)
SI: NFB2B_procNFe_IB – NS: http://sap.com/xi/NFE/006 - SWCV: SAPBO SLL-NFE 10.0
SCN03.jpg
SI: INB2B_NFeResponse310 – Category: Abstract – Type(ED): nfeProc (http://sap.com/xi/NFE/008)
SI: NFB2B_procNFe_IB – NS: http://sap.com/xi/NFE/008 - SWCV: SAPBO SLL-NFE 10.0

SI: INB2B_EventoNFeResponse – Category: Abstract – Type(ED): procEventoNFe (http://sap.com/xi/NFE/006)
SI: EFB2B_procEventoNFe_IB – NS: http://sap.com/xi/NFE/006 - SWCV: SAPBO SLL-NFE 10.0

SI: INB2B_CTeResponse104 – Category: Abstract – Type(ED): cteProc (http://sap.com/xi/CTE/104)
SI: CFB2B_procCTe_IB – NS: http://sap.com/xi/CTE/104 - SWCV: SAPBO SLL-NFE 10.0

SI: INB2B_CTeResponse – Category: Abstract – Type(ED): cteProc (http://sap.com/xi/CTE/200)
SI: INB2B_EventoCTeResponse – NS: http://sap.com/xi/CTE/200 - SWCV: SAPBO SLL-NFE 10.0


Integration Process
BPM.jpg
O Integration Process(ccBPM) se encarrega de realizar o Multi-Mapping e iniciar o processamento paralelo entre 6 nós, onde dentro de cada nó um ParForEach percorre uma Lista(Multiline) realizando o split de forma simultânea para o seu interface inbound correspondente. O exception handle(MappingException) é utilizado no Transformation step, quando acionado dispara um alert e encerra o processo.

Abaixo estão detalhadas as configurações dos steps para um melhor entendimento:
BPM01.jpg
BPM02_01.jpg 
O recurso Read Attachments do OM garante que os anexos estarão disponíveis no Mapping Runtime.
BPM02.jpg
Java Mapping(anexo) utilizado no OM tem a função de criar o payload <Messages> do Multi-Mapping.

BPM03.jpg
BPM04.jpg
Os demais Block's seguem o mesmo raciocínio de percorrer o Multiline e "entregar" para o interface inbound correspondente.

BPM06.jpg

Os Container steps From e Date, recebem os valores do Emissor e DataHora do e-mail(Mail).
BPM05.jpg

O Alert INB2B_ALRT deve ser criado através da transação ALRTCATDEF:
BPM07.jpg
Texto dinâmico deve ser utilizado para a interação com parâmetros no Alert Message(&From& e &Date&).

Interface Collection

Para quem está em um ambiente Single Stack (Java Only) ou não quiser utilizar BPM, pode optar por deixar o trabalho por conta do InterfaceCollection (http://sap.com/xi/XI/System).
IFC01.jpg
Apenas configure o Operation Mapping utilizando o Java Mapping conforme imagem acima. Em Runtime oInterfaceCollection  realiza o Split do <Messages> para seus devidos Interfaces(Target).


Integration Directory
Antes de transferir o Scenario do ESR importe o Integration Process(ccBPM). No ID basta apenas realizar a configuração do Scenario (Tools->Apply Model from ES Repository...) utilizando o ccBPM e os Communications Channel do tipo Mail Sender e XI Receiver.

Mail Sender:
ID01.jpg
ID02.jpg

Testes
Envio e-mail com anexos para Inbox:
T01.jpg

Monitor de Mensagens (SXI_MONITOR)
T02.jpg
Log do Workflow (SWI2_FREQ)
T03.jpg
T04.jpg

Alert (MappingException) – XML corrompido
T02_01.jpg
T05.jpg
T06.jpg

Alert Inbox (ALRTINBOX)
T07.jpg
E-mail do alert (SOST)
T08.jpg

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.