Skip to Content
Author's profile photo Alexandre Moura

TDF-EFD-Reinf: pré-processamento dos eventos R2010 e R2020

Neste post iremos abordar a funcionalidade de pré-processamento dos dados para geração da EFD-Reinf.

A funcionalidade de pré-processamento da EFD-Reinf para os eventos R2010 e R2020 auxilia na determinação do tipo de serviço (tpServico) desses dois eventos.

Quando essa ferramenta é executada, é realizada a associação do item da nota fiscal ao tipo de serviço relacionado preenchendo automaticamente a tabela /TMF/D_IT_TPSERV. Esta tabela contém os dados para geração de parte dos dados dos eventos de prestador e tomados de serviços.

Para que o preenchimento dessas informações seja automatizado, foi disponibilizada uma nova parametrização para este fim, a view de manutenção /TMF/D_R_TPSERV:

Nesta view, pode-se determinar o tipo de serviço utilizando as chaves:

  • Empresa (Company)
  • Filial (Branch)
  • Código do item (Item Code): deve ser o código do material (mestre de materiais ou mestre de serviços) de acordo com o que foi cadastrado no ERP
  • Participante (Participant Type/Code): deve ser o código do cliente ou fornecedor da mesma forma que está cadastrado no ERP
  • Validade (Calid From/To): período de validade das informações

Caso os parâmetros disponibilizados nesta view não sejam suficientes para a correta determinação do tipo de serviço, pode-se implementar o método MODIFY_TPSERV da BAdI /TMF/BADI_REINF_PRE_PROC que foi disponibilizada para este fim:

Assim que tiver sido feito o mapeamento do tipo de serviço, basta executar o programa de pré-processamento através da transação /TMF/REINF_PRE_PROC:

A ferramenta possibilita a execução do mapeamento automático do tipo de serviço em modo de teste (Test Mode) para que possa ser feita uma análise prévia do mapeamento dos itens da nota fiscal a serem processados para aquele período.

A ferramenta também só pode ser executada via job em background devido ao potencial volume de documentos processados por execução. O retorno do job é a lista de documentos processados:

Para os exemplos em modo de simulação acima, o documento 483836 teve o item associado ao tipo de serviço 100000014 a partir da parametrização determinada utilizando o código do material (MAT_SERV_TDF), e o código do parceiro (CUST_TDF_S):

É importante considerar que, na execução em modo definitivo, caso já tenha sido executada a determinação do tipo de serviço anteriormente para os documentos, os mesmos serão redeterminados e substituídos caso algum parâmetro tenha sido modificado.

Para utilização desta ferramenta, além da instalação do support package 10 do TDF, é necessário implementar as SAP notes abaixo:

  • 2540424 – [TDF SP10] EFD-Reinf – Automatic Implementation of Data Dictionary Objects for SAP Note 2540425
  • 2540425 – [TDF SP10] EFD-Reinf – New Pre Processing Report

Fique atento aos próximos posts com novidades da solução.

Alexandre Moura

Time de Desenvolvimento TDF

Assigned Tags

      16 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Lindolfo Martins dos Santos
      Lindolfo Martins dos Santos

      Bom dia Alexandre,

       

      Obrigado pela postagem. Tenho uma dúvida: a BAdI disponibilizada só tem um método para ajustar o campo Tipo de Serviço, como poderemos ajustar outros campos dos eventos quando for necessário ? Haverá outras BAdIs ou métodos novos ?

      Um exemplo seria o campo CNO, que não existe hoje nos documentos fiscais.

       

      Att.

      Lindolfo

       

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Olá Lindolfo,

      os campos que não são carregados do ERP para geração dos eventos podem ser preenchidos através das tabelas complementares e shadows da mesma forma que os outros relatórios SPED do TDF.

      Att.

      Alexandre Moura

      Author's profile photo Lindolfo Martins dos Santos
      Lindolfo Martins dos Santos

      Olá Alexandre,

       

      Esse complemento deve ser feito através das transações (/TMF/SHEET_GEN e /TMF/IMPEXL) ou (/TMF/SHEET_GEN_ESO e /TMF/IMPEXL) ?

       

      Grato,

      Lindolfo

       

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Olá Lindolfo,

      depende sa sua abordagem em relação a utilização da solução EFD-Reinf.

      O podst abaixo descreve duas possibilidades de utilização da solução:

      https://blogs.sap.com/2017/10/06/tdf-efd-reinf-solucao-para-geracao-e-envio-dos-eventos/

      Não necessariamente você precisa utilizar as transações mencionadas por você para preenchimento e complementação dos dados do leiaute da EFD-Reinf.

      Att.

      Alexandre Moura

      Author's profile photo Lindolfo Martins dos Santos
      Lindolfo Martins dos Santos

      Olá Alexandre,

       

      Verificamos que os dados que devemos atualizar para o CNO encontram-se na shadow /TMF/D_INDOBR_NF nos campos CNO e IND_OBRA.

      Entretanto não conseguimos fazer a atualização através de planilha como os demais registros SPED porque na tabela /TMF/D_SHADOWDD informa que esta shadow não é atualizável através de Excel.

      De que outra forma podemos inserir dados nesta shadow ? Pode ser por uma codificação ABAP ?

       

      Att.

      Lindolfo

       

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Olá Lindolfo,

      sugiro veificar o guia do desenvolvedor, onde pode avaliar as formas de preencheimentos das views:

      https://help.sap.com/doc/5c38c7e56de04efe83138adbbd068163/1.0.10/en-US/loio36a15d9462c6424c929a3b3ca57a7fc3.pdf

      Pode avaliar o programa exemplo /TMF/CTR_DEMO para sua referencia.

      Att.

      Alexandre Moura

      Author's profile photo Lindolfo Martins dos Santos
      Lindolfo Martins dos Santos

      Obrigado.

       

      Author's profile photo Former Member
      Former Member

      Bom dia,

      Tenha uma duvida quando ao campo IND_CPRB, onde tem uma regra de que somente poderá ser 0/1 conforme o layout 1.2, este campo não esta disponível para alimentar via excel, e mesmo alterando este campo para 0 ou 1 mesmo assim ainda continua sema informação que necessita gerando erro de validação na geração do mesmo .

      Obrigado.

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Oi Janio,

      não sei exatamente de que forma você está tentando popular o campo IND_CPRB mas se for através de shadow, o campo está disponivel na /TMF/D_NF_DOC.

      Caso você esteja preenchendo uma tabela staging da mensageria, o campo deve ser preenchido através da /TMF/RDSPSRVTID, para o preenchimento desta staging table, você pode utilizar a transação /TMF/SHEET_GEN_ESO para gerar o arquivo excel template.

      Att.

      Alexandre Moura

      Author's profile photo Former Member
      Former Member

      Desculpe, não informei o registro e o R-2010

      Author's profile photo Former Member
      Former Member

      Obrigado Alexandre Moura, verificamos e conseguimos preencher o campo complementar.

      Author's profile photo Lindolfo Martins dos Santos
      Lindolfo Martins dos Santos

      Olá Jânio,

       

      Como vocês conseguiram popular esse campo ?

       

      Att.

      Lindolfo

       

      Author's profile photo Vinicius Pelegrino Sanches Lopes
      Vinicius Pelegrino Sanches Lopes

      Olá Alexandre,

      Toda vez que executamos o pré-processamento a tabela /TMF/D_IT_TPSERV é limpa por completo. Nesse caso como verificar o tipo de serviço atribuído a uma NF após a execução do pré-processamento de outro período/evento?

      Grato,

      Vinicius

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Oi VInicius,

      o report de pré-processamento atualiza os dados dessa tabela baseado na chave informada na tela de seleção.

      Caso você execute o report sem peíodo definido, o report irá atualizar toda a tabela retdeterminando todos os dados.

      Caso você execute o report determinando o período, apenas os dados do mesmo serão redeterminados, mantendo-se assim os dados previamente determinados dos períodos anteriores.

      Att.

      Alexandre Moura

      Author's profile photo Vinicius Pelegrino Sanches Lopes
      Vinicius Pelegrino Sanches Lopes

      Olá Alexandre,

      Quando executo o report em um período para o evento R-2010, para processar as notas de entrada  e após eu executo o mesmo período para o evento R-2020, para processar as notas de saída, as notas de entrada desse período que já tinham sido processadas são apagadas.

      Não é possível executar sem período ou tipo de evento definido, eles estão marcados como campos obrigatórios no report e aparece erro ao executar / agendar job.

      Grato,

      Vinicius

       

       

      Author's profile photo Alexandre Moura
      Alexandre Moura
      Blog Post Author

      Oi Vinicius,

      o comportament correto é reprocessar apenas as entradas da tabela de tipo de serviço relativas a chave de seleção definida na tela. Se esse comportamento de redeterminar dados de eventos que não são os definidos na tela de seleção, sugiro abrir um incidente na SAP para que o cenário possa ser analisado adequadamente. Sugiro abrir o incidente com todas as informações necessárias já disponibilizadas como passo a passo para execução do cenário em ambiente de teste, ambiente aberto para acesso remoto.

      Att.

      Alexandre Moura