cancel
Showing results for 
Search instead for 
Did you mean: 

NFe 10.0 for a Non-SAP Application

daniel_alexandre
Discoverer
0 Kudos

Existe algum manual com as funções RFC ou Proxy disponíveis no stack ABAP do GRC NFe10.0 para fazer a ligação de um sistema legado (não SAP) com a solução GRC NFe 10.0?

O Master Guide apenas faz menção à possibilidade de se ligar uma aplicação emissora à solução NFe 10.0, porém não diz em lugar algum como fazer esta ligação e quais funções utilizar, diz apenas que será por conexão RFC.

Accepted Solutions (1)

Accepted Solutions (1)

rhviana
Active Contributor
0 Kudos

Daniel Alexandre boa noite,

Se você logar no stack abap do GRC NF-e, efetue a Tcode - sproxy, verique o software component SAP BO NF-e 10.0, namespace 006a você vai poder verificar todas as proxies ativas.

Basicamente as funções RFC do SAP são:

J_1B_XML_IN_TAB e J_1B_XML_OUT

Basicamente seguindo o MasterGuide você precisa criar duas conexões RFC:

  • 1 ) RFC do SAP ECC para SAP GRC NF-e 10.0
  • 2 ) RFC do SAP GRC NF-e 10.0 para SAP ECC
  • Realizar as configurações na BD54 - Logical System - BD97 - Vincular a RFC com Logical System.

A arquitetura de integração proposta para SAP desde a versão 1.0:

SAP ECC ----> RFC ----> SAP GRC NF-e ---> PROXY ---> SAP PI ---> SOAP.

O basicão é isso ai.

Consegui te ajudar ?

Abraçs

daniel_alexandre
Discoverer
0 Kudos

Boa Noite Ricardo,

    como disse, minha necessidade é conectar um sistema legado ao SAP GRC, portanto as funções dentro do sproxy não serviriam, pois estas são utilizadas para a conexão do GRC-ABAP com o PI.

Agora quanto as 2 funções que vc elencou "J_1B_XML_IN_TAB" e "J_1B_XML_OUT", eu realmente desconhecia! Ou seja, quando um ECC emissor envia dados para o GRC-ABAP ele utilizar estas funções RFC? ou estas são específicas para a utilização de um Sistema Legado Emissor?

Vou fazer uma análise amanha no ambiente do cliente para ter mais informações. Muito obrigado.

Ainda sim, se alguém tiver alguma documentação SAP dizendo "como configurar um Sistema Legado Emissor com a solução GRC NFe 10.0" eu agradeceria!

rhviana
Active Contributor
0 Kudos

Daniel Alexandre bom dia,

Então da uma olhada em uma thread antiga minha sobre esse assunto:

http://scn.sap.com/thread/3348121

No passado fiz exatamente esse desenvolvimento, existe uma badI no GRC para fazer o tratamento de retorno da MSG para sistema legado, porém, é limitado você só consegue retornar a informação para WS e não para WS + SAP ECC, a priore descartei isso, pois, a interface que desenvolvi não apenas atendia NF-e, como Movimentos de Materiais (Migo) e contábil (MB1A,MBST e outros), então eu tinha o requerimento de devolver a mensagem para WS e SAP ECC.

O que eu fiz foi o seguinte:

                   

Então fiz um desenvolvimento de um ccBPM no PI para controlar essa mensagem e fazer a famosa ponte (ASYNC to SYNC), fiz algumas parametrizaçoes no PI para cortar a conexão do WS brevimente e keeplive de conexão sincrona também, pois em algumas situações o processo demorava mais de 60s, como comentei, após a NF-e ter sido autorizada existia a transferencia de estoques ou entrada de mercadoria e depois contábil.

Tive que desenvolver então toda uma interfaces quebrada em BLOCOS/PROCESSO, e funcionou muito bem essa solução, a parte mais complicada foi o retorno para WS, ele queria algumas informações como DigestValue e outras que as tabelas não tem, então tive que desenvolver um javamapping (Parsing XML com DOM) para extrair os valores de acordo com a estrutura de resposta do WS e retornar também a string do XML pois a impressão era para ocorrer no WS, inicialmente, o que foi descartado depois e transferida a impressão para SAP ECC.

Porém para notas aprovadas eles queriam o XML, para canceladas por evento, cc-e, eu extraia os valores do XML e depois deletava o note da string do XML.

Se você não precisar da nota do lado do SAP, vale a pena estudar essa badi para tratamento de retorno do GRC pois acredito que ela te atende muito bem.

Da uma olhada nas funções do GRC  -  /xnfe/nfe_creat, cancel, skip, veja uma forma de integrar com elas que seu problema de geração sem SAP estara solucionado.

Agora documentação oficial da SAP sobre esse cenário, acho que você não vai encontrar nada.

Acredito que você deve ser um recurso SAP PI, então estude um possível desenvolvimento de um layout msg.

Agora ficou mais claro ?

Sem muito mistério, negócio parece complicado mais não é .

Abraços,

Ricardo Viana.

Message was edited by: Ricardo Viana

rhviana
Active Contributor
0 Kudos

Daniel ?

Teve a luz para desenvolver ? O que decidiu ? Dificuldades/Crises ?

Ficou claro para você o que eu fiz ?

Att,

daniel_alexandre
Discoverer
0 Kudos

Oi Ricardo,

   desculpe a demora na resposta!

Então, show de bola sua analogia e realmente o caminho parece ser a utilização das BADIs /XNFE/XML_IN_TAB do GRC, pois não iremos replicar as Notas no ECC, como acredito que você fez! o Sistema Legado é o responsável por emitir as próprias NFe's. Temos sim um ECC aqui, que também é emissor, porém tem outro range de numeração, CNPJ, Area de Atuação, etc

Como o projeto tem o acompanhamento de MaxAttention da SAP, eu encaminhei seus comentários para o contado e solicitei o aval de direcionamento e a indicação de alguma outra literatura.

Vou aguardar a resposta deles para postar aqui e documentar assim o caso de forma e caminhos oficiais, portanto vou deixar a thread aberta mais um pouco!

De qualquer forma, muito obrigado Ricardo e se lembrar de mais algum detalhe, estou aqui!!!

Att.,

rhviana
Active Contributor
0 Kudos

Daniel Alexandre,

Bacana velho, a priore esses são todos os detalhes do que eu fiz mesmo.

O projeto que eu estava não tinha MaxAttention era o modo "te vira negão" rsrsrs..

Sucesso.

Espero ter ajudado.

Former Member tem mais alguma coisa a complementar sobre esse cenário ? NF-e sendo criada fora do SAP ?

Abra´s,

Ricardo Viana.

Answers (1)

Answers (1)

Former Member
0 Kudos

Meus dois centavos para contribuir na discussão....

BAdI: Call sistema não-SAP via RFC Comunicação

A badI permite controlar a chamada RFC para a comunicação com o sistema de ERP, para usar a comunicação eletrônica de notas fiscais com as autoridades para sistemas não-SAP.

Dois módulos de função são usadas para chamar os sistemas não-SAP, um para relatar o status de NF-es, e outro para eventos. A implementação do BAdI determina se o padrão ou os módulos de função não SAP são chamados.

Módulo de função / XNFE / XML_IN_TAB relata o status de NF-es para sistemas não-SAP. Tabelas parâmetro CH_XMLTAB inclui os seguintes campos importantes:

◦ I_DOCNUM (NF-e número do documento)

◦ I_AUTHCODE (número do protocolo do SEFAZ)

◦ I_CODE (código de status do SEFAZ)

◦ I_ID (chave de acesso de 44 caracteres)

◦ I_MSGTYP (Um código que determina se a NF-e está autorizada ou não: 1: NF-e autorizada, 2: NF-e rejeitada, 3: NF-e negado, 4: Cancelamento autorizado, 5: Ignorando autorizado, 6: Cancelamento rejeitado, 7: Ignorando rejeitada)

◦ I_AUTHDATE (NF-e Tempo de Processamento - Data da SEFAZ)

◦ I_AUTHTIME (NF-e tempo de processamento - Tempo de SEFAZ)

Tabelas parâmetro CT_BAPIRET2: Se ocorrer um erro no sistema de alvo, o estado de erro com um ou mais textos de erro pode ser retornada com a ajuda de uma tabela BAPIRET2.

Módulo de função / XNFE / NFE_EVENT_IN relata o status de eventos para sistemas não-SAP. Tabelas de parâmetros IT_EVENTS inclui os seguintes campos importantes:

◦ DOCNUM (NF-e número do documento)

◦ EXT_EVENT (Tipo de Evento)

◦ SEQNUM (Número de Seqüência Interna)

◦ EXT_SEQNUM (SEFAZ Número de Seqüência)

◦ ACCKEY (chave de 44 caracteres NF-e de acesso)

◦ AuthCode (Protocolo Número de SEFAZ)

◦ REPLY_TMPL (Eventos: Timestamp de inscrição)

◦ CODE (código de status da SEFAZ)

◦ msgtyp (Um código que determina se o evento for autorizado ou não 1: Evento autorizado, 2: Evento rejeitada)

◦ EXT_REPLY_TMPL (Registro de Eventos: Data / Hora)

Tabelas parâmetro CT_BAPIRET2: Se ocorrer um erro no sistema de alvo, o estado de erro com um ou mais textos de erro pode ser retornada com a ajuda de uma tabela BAPIRET2.

Abraço

Eduardo Chagas