RFI040 — SPED EFD-Reinf (enriquecimento)
Menu: Fiscal > Relatórios > SPED EFD-Reinf
Objetivo
A tela RFI040 gera, assina e transmite os eventos da EFD-Reinf (R-1000, R-2010, R-2020, R-2055, R-2060, R-2098, R-2099, R-4010, R-4020, R-4099 e R-9000) a partir das notas fiscais, retenções e liquidações já lançadas no ERP. Também permite registrar Lançamentos Avulsos de retenção (sem nota fiscal vinculada), consultar protocolos de lotes enviados e emitir o relatório de Recibos da EFD-Reinf.
Fluxo principal
- Abrir a tela; o sistema carrega os parâmetros fiscais e define o ambiente (Produção ou Produção Restrita) a partir de TP_AMBSPEDREINF. (Consulta / geral) —
source/RFI040/URFI040.pas:401-448 (iniciar) - Informar o diretório onde os arquivos XML da EFD-Reinf serão salvos. (Lote de Eventos) —
source/RFI040/URFI040.pas:750-758 (TfrmRFI040.btnGerarEventoClick) - Clicar em Gerar Evento; o sistema cria o XML e marca automaticamente o evento na lista de envio. (Lote de Eventos) —
source/RFI040/URFI040.pas:1063-1065 (TfrmRFI040.btnGerarEventoClick) - Conferir o protocolo retornado e, se necessário, consultar novamente o status do protocolo na aba Dados Reinf. (Dados Reinf) —
source/RFI040/URFI040.pas:1565-1630 (TfrmRFI040.PngBitBtn1Click) - (Opcional) Cadastrar retenções sem nota fiscal vinculada na aba Lançamentos Avulsos, informando pessoa, natureza de rendimento, datas e valores. (Lançamentos Avulsos) —
source/RFI040/URFI040.pas:1760-1799 (TfrmRFI040.btnSalvarClick) - (Opcional) Emitir o relatório de Recibos por período na aba Recibo. (Recibo) —
source/RFI040/URFI040.pas:2160-2182 (TfrmRFI040.btnGeraRelClick)
Campos obrigatórios
| Campo | Condição | Mensagem | Fonte |
|---|---|---|---|
| Diretório de destino (edtDS_DIRETORIOREINF) | Sempre, antes de gerar qualquer evento. | Informe um diretório para salvar os arquivos do SPED EFD-Reinf | source/RFI040/URFI040.pas:750-751 (TfrmRFI040.btnGerarEventoClick) |
| Lançamento Avulso: Pessoa, Data de Emissão, Natureza de Rendimento, Data de Pagamento | Ao salvar um lançamento avulso (aba Lançamentos Avulsos). | Pessoa não Informada! Verifique. / Data de Emissão do Documento não Informada! / Natureza de Rendimento não Informada! / Data de Pagamento não Informada! | source/RFI040/URFI040.pas:1767-1789 (TfrmRFI040.btnSalvarClick) |
| R-1000: Período Inicial e Final de Apuração | Ao gerar o evento R-1000. | É obrigatório informar o Período Inicial/Final de Apuração. Verifique. | source/RFI040/URFI040.pas:764-780 (TfrmRFI040.btnGerarEventoClick) |
| R-1000: Nova Data Inicial de Alteração | Quando Tipo de Arquivo = Alteração. | É Obrigatório Informar a Nova Data Inicial para Alteração do Registro do Evento R-1000! | source/RFI040/UdmRFI040.pas:2844-2845 (TdmRFI040.GeraXML_R1000) |
| R-4010/R-4020: Período Inicial e Final de Apuração | Ao gerar o respectivo evento. | É obrigatório informar o Período Inicial/Final de Apuração. Verifique. | source/RFI040/URFI040.pas:955-996 (TfrmRFI040.btnGerarEventoClick) |
| Retificação (TP_ARQUIVO=R/2): Nº Recibo e CNPJ/CPF do prestador | Quando o evento periódico é marcado como Retificação. | Para retificação é obrigatório informar o Nº Recibo! / É Obrigatório informar o CNPJ/CPF para Retificação! | source/RFI040/UdmRFI040.pas:465-477 (TdmRFI040.GeraXML_R2010) |
| R-2060: % Alíquota | Ao gerar o evento R-2060 (CPRB). | É obrigatório informar o % Alíquota. Verifique. | source/RFI040/UdmRFI040.pas:1212-1213 (TdmRFI040.GeraXML_R2060) |
| R-9000: Período de Apuração e Nº do Recibo | Ao gerar o evento de exclusão R-9000. | É obrigatório informar o Período de Apuração! / É obrigatório informar o Número do Recibo! | source/RFI040/UdmRFI040.pas:3173-3181 (TdmRFI040.GeraXML_R9000) |
| Relatório de Recibo: Data Inicial e Final | Ao clicar em Gerar Relatório na aba Recibo. | Por favor informe a data inicial!/final! | source/RFI040/URFI040.pas:2166-2182 (TfrmRFI040.btnGeraRelClick) |
Mensagens: causa e ação
Informe um diretório para salvar os arquivos do SPED EFD-Reinf
Causa: O campo de diretório de saída dos arquivos está vazio ao clicar em Gerar Evento.
Ação: Informar/selecionar uma pasta válida no campo de diretório antes de gerar o evento.
Fonte: source/RFI040/URFI040.pas:750-751 (TfrmRFI040.btnGerarEventoClick)
Erro ao criar Diretório: %s
Causa: O sistema não conseguiu criar a subpasta '\EFD-Reinf' dentro do diretório informado (permissão ou caminho inválido).
Ação: Verificar permissão de escrita na pasta ou escolher outro diretório de destino.
Fonte: source/RFI040/URFI040.pas:754-757 (TfrmRFI040.btnGerarEventoClick)
Não foi possível criar o Diretório: %s
Causa: A pasta específica do período/evento (ex.: EFD-Reinf<empresa>_<ano-mês>) não pôde ser criada.
Ação: Verificar permissões da pasta e espaço em disco, depois gerar o evento novamente.
Fonte: source/RFI040/URFI040.pas:793-795 (TfrmRFI040.btnGerarEventoClick)
É obrigatório informar o Período Inicial de Apuração. Verifique.
Causa: A data inicial de apuração da guia do evento (ex.: R-1000, R-4010, R-4020) não foi preenchida.
Ação: Preencher a data inicial de apuração na guia do evento antes de gerar o XML.
Fonte: source/RFI040/URFI040.pas:764-768 (TfrmRFI040.btnGerarEventoClick)
É obrigatório informar o Período Final de Apuração. Verifique.
Causa: A data final de apuração da guia do evento não foi preenchida.
Ação: Preencher a data final de apuração na guia do evento antes de gerar o XML.
Fonte: source/RFI040/URFI040.pas:770-774 (TfrmRFI040.btnGerarEventoClick)
A Data final não pode ser Menor que a Data Inicial. Verifique!
Causa: A data final informada é anterior à data inicial no mesmo período de apuração.
Ação: Corrigir as datas de forma que a data final seja igual ou posterior à inicial.
Fonte: source/RFI040/URFI040.pas:776-780 (TfrmRFI040.btnGerarEventoClick)
Evento [%s] Gerado com Sucesso!
Causa: O XML do evento da guia ativa foi criado com sucesso no diretório configurado.
Ação: Nenhuma ação necessária; o evento fica marcado na lista para envio em lote.
Fonte: source/RFI040/URFI040.pas:1063-1065 (TfrmRFI040.btnGerarEventoClick)
Não há Movimentações de Serviços Tomados neste período
Causa: Não existem notas de entrada de prestação de serviço (tomador) para as empresas/período filtrados no R-2010.
Ação: Revisar o período de apuração e as empresas marcadas na grade de filiais da guia R-2010.
Fonte: source/RFI040/UdmRFI040.pas:636-637 (TdmRFI040.GeraXML_R2010)
Não há Movimentações de Serviços Prestados neste período
Causa: Não existem notas de saída de prestação de serviço para o período/empresas filtrados no R-2020.
Ação: Revisar o período de apuração e as empresas marcadas na grade de filiais da guia R-2020.
Fonte: source/RFI040/UdmRFI040.pas:862-863 (TdmRFI040.GeraXML_R2020)
Não há Movimentações de Aquisição de Produtor Rural neste período
Causa: Não existem notas de aquisição de produção rural para o período/CNPJ filtrados no R-2055.
Ação: Revisar o período de apuração e o CNPJ/CPF do produtor informado no filtro do R-2055.
Fonte: source/RFI040/UdmRFI040.pas:1126-1127 (TdmRFI040.GeraXML_R2055)
Não há Pagamentos de Notas de Serviços com IR neste período
Causa: Não existem retenções de IR (notas ou lançamentos avulsos) de pessoa física no período informado para o R-4010.
Ação: Confirmar se existem notas/lançamentos avulsos com IR retido no período e regime (caixa/competência) configurados.
Fonte: source/RFI040/UdmRFI040.pas:2002-2005 (TdmRFI040.GeraXML_R4010)
Para retificação é obrigatório informar o Nº Recibo! Verifique.
Causa: O Tipo de Arquivo do evento está marcado como Retificação, mas o Nº do Recibo do evento original não foi informado.
Ação: Preencher o Nº do Recibo do evento original antes de gerar a retificação.
Fonte: source/RFI040/UdmRFI040.pas:468-471 (TdmRFI040.GeraXML_R2010)
É Obrigatório informar o CNPJ/CPF para Retificação! Verifique.
Causa: Retificação do R-2010 sem o CNPJ/CPF do prestador cujo evento original será retificado.
Ação: Informar o CNPJ/CPF do prestador de serviço no campo de retificação da guia R-2010.
Fonte: source/RFI040/UdmRFI040.pas:473-474 (TdmRFI040.GeraXML_R2010)
É Obrigatório informar o CPF do Prestador para Retificação! Verifique.
Causa: Retificação do R-4010 sem o CPF do beneficiário pessoa física cujo evento original será retificado.
Ação: Informar o CPF do prestador/beneficiário no campo de retificação da guia R-4010.
Fonte: source/RFI040/UdmRFI040.pas:1617-1618 (TdmRFI040.GeraXML_R4010)
É Obrigatório informar o CNPJ do Prestador para Retificação! Verifique.
Causa: Retificação do R-4020 sem o CNPJ do beneficiário pessoa jurídica cujo evento original será retificado.
Ação: Informar o CNPJ do prestador/beneficiário no campo de retificação da guia R-4020.
Fonte: source/RFI040/UdmRFI040.pas:2152-2153 (TdmRFI040.GeraXML_R4020)
É obrigatório informar o % Alíquota. Verifique.
Causa: A alíquota da CPRB não foi informada na guia R-2060, impedindo o cálculo da contribuição.
Ação: Preencher o campo % Alíquota do R-2060 conforme o CNAE/atividade da empresa antes de gerar o evento.
Fonte: source/RFI040/UdmRFI040.pas:1212-1213 (TdmRFI040.GeraXML_R2060)
É Obrigatório Informar a Data Inicial para Gerar o Evento R-1000!
Causa: O campo Período De (início de vigência) do R-1000 está vazio.
Ação: Preencher a Data Inicial na guia R-1000 antes de gerar o evento.
Fonte: source/RFI040/UdmRFI040.pas:2667-2670 (TdmRFI040.GeraXML_R1000)
É Obrigatório Informar a Nova Data Inicial para Alteração do Registro do Evento R-1000!
Causa: O Tipo de Arquivo do R-1000 está como Alteração, mas a Nova Data Inicial de vigência não foi informada.
Ação: Preencher o campo 'Nova Data De' na guia R-1000 antes de gerar o evento de alteração.
Fonte: source/RFI040/UdmRFI040.pas:2844-2845 (TdmRFI040.GeraXML_R1000)
É obrigatório informar o Número do Recibo! Verifique
Causa: O evento R-9000 (exclusão) não teve o Nº do Recibo do evento a excluir preenchido.
Ação: Informar, na guia R-9000, o Nº do Recibo do evento original que se deseja excluir.
Fonte: source/RFI040/UdmRFI040.pas:3178-3180 (TdmRFI040.GeraXML_R9000)
Falha na Assinatura do Evento R-1000: %s
Causa: O certificado digital configurado em NR_SERIALCERT não conseguiu assinar o XML do R-1000 (certificado vencido, senha incorreta ou não instalado).
Ação: Verificar o certificado digital no parâmetro fiscal NR_SERIALCERT e tentar enviar novamente.
Fonte: source/RFI040/URFI040.pas:1188-1193 (TfrmRFI040.bntEnviarREINFClick)
Deseja enviar Lote de Eventos? Eventos %s
Causa: Confirmação padrão antes de transmitir o lote com os eventos marcados na lista.
Ação: Conferir a lista de eventos exibida e confirmar apenas se todos forem os que devem ser enviados.
Fonte: source/RFI040/URFI040.pas:1167-1169 (TfrmRFI040.bntEnviarREINFClick)
Envio Cancelado!
Causa: O usuário respondeu 'Não' à confirmação de envio do lote.
Ação: Repetir o envio quando desejar transmitir os eventos.
Fonte: source/RFI040/URFI040.pas:1169-1170 (TfrmRFI040.bntEnviarREINFClick)
Lote Enviado com Sucesso! %s Consulte o Protocolo: %s
Causa: O lote foi recebido pela EFD-Reinf (cdResposta=1) e um número de protocolo foi retornado.
Ação: Anotar/consultar o protocolo exibido; o status detalhado pode ser acompanhado depois na aba Dados Reinf.
Fonte: source/RFI040/URFI040.pas:1358-1424 (TfrmRFI040.bntEnviarREINFClick)
Nenhum evento Gerado! Selecione a Guia correspondente para Gerar os Eventos
Causa: Nenhum evento foi marcado na lista de envio porque nenhum XML foi gerado antes de clicar em Enviar REINF.
Ação: Ir até a guia do evento desejado, clicar em Gerar Evento e só então Enviar REINF.
Fonte: source/RFI040/URFI040.pas:1465-1467 (TfrmRFI040.bntEnviarREINFClick)
A Consulta de Protocolo falhou! Verifique. %s
Causa: A DLL de comunicação com a Receita retornou erro ao consultar o protocolo (certificado, rede ou protocolo inexistente no ambiente).
Ação: Conferir o certificado digital, o ambiente (Produção/Restrita) e se o protocolo pertence ao ambiente selecionado.
Fonte: source/RFI040/URFI040.pas:1595-1599 (TfrmRFI040.PngBitBtn1Click)
Pessoa não Informada! Verifique.
Causa: O lançamento avulso está sendo salvo sem a Pessoa (beneficiário) informada.
Ação: Selecionar a pessoa beneficiária antes de salvar o lançamento avulso.
Fonte: source/RFI040/URFI040.pas:1767-1770 (TfrmRFI040.btnSalvarClick)
Data de Emissão do Documento não Informada! Verifique.
Causa: O lançamento avulso está sendo salvo sem a Data de Emissão do documento.
Ação: Preencher a Data de Emissão antes de salvar o lançamento.
Fonte: source/RFI040/URFI040.pas:1773-1776 (TfrmRFI040.btnSalvarClick)
Natureza de Rendimento não Informada! Verifique.
Causa: O lançamento avulso está sendo salvo sem a Natureza de Rendimento (TFI021) selecionada.
Ação: Selecionar a Natureza de Rendimento correspondente ao pagamento antes de salvar.
Fonte: source/RFI040/URFI040.pas:1779-1782 (TfrmRFI040.btnSalvarClick)
Data de Pagamento não Informada! Verifique.
Causa: O lançamento avulso está sendo salvo sem a Data de Pagamento.
Ação: Preencher a Data de Pagamento antes de salvar o lançamento.
Fonte: source/RFI040/URFI040.pas:1785-1788 (TfrmRFI040.btnSalvarClick)
Lançamento Nº %s Registrado com Sucesso!
Causa: O lançamento avulso foi salvo com um novo número de sequência gerado automaticamente.
Ação: Nenhuma ação necessária; o número exibido identifica o lançamento na grade e nos eventos R-4010/R-4020.
Fonte: source/RFI040/URFI040.pas:1792-1799 (TfrmRFI040.btnSalvarClick)
Tem certeza que deseja excluir o Registro?
Causa: Confirmação padrão antes de excluir um lançamento avulso.
Ação: Confirmar apenas se o lançamento não tiver sido usado em um evento já transmitido.
Fonte: source/RFI040/URFI040.pas:1807-1809 (TfrmRFI040.btnExcluirClick)
Registro excluido com Sucesso.
Causa: O lançamento avulso foi removido da base.
Ação: Nenhuma ação necessária; se o lançamento já constava em um evento gerado, gerar o evento novamente para refletir a exclusão.
Fonte: source/RFI040/URFI040.pas:1811-1815 (TfrmRFI040.btnExcluirClick)
A Pessoa não Está Cadastrada. Verifique! [TFA001]
Causa: O código de pessoa informado no lançamento avulso não existe no cadastro de Pessoas.
Ação: Cadastrar a pessoa em Pessoas (TFA001) antes de usá-la no lançamento avulso.
Fonte: source/RFI040/UdmRFI040.pas:3308-3312 (TdmRFI040.tabLANCTOAVULSOREINFCD_PESSOAValidate)
A Pessoa não Está Ativa. Verifique! [TFA001]
Causa: A pessoa informada existe mas está marcada como inativa no cadastro.
Ação: Reativar a pessoa em Pessoas (TFA001) ou selecionar outra pessoa ativa.
Fonte: source/RFI040/UdmRFI040.pas:3314-3318 (TdmRFI040.tabLANCTOAVULSOREINFCD_PESSOAValidate)
O Natureza de Rendimento não Cadastrada! Verifique [TFI021]
Causa: O código de natureza de rendimento informado não existe no cadastro TFI021.
Ação: Cadastrar a natureza de rendimento em Fiscal > Natureza de Rendimento Reinf antes de usá-la no lançamento.
Fonte: source/RFI040/UdmRFI040.pas:3279-3281 (TdmRFI040.tabLANCTOAVULSOREINFCD_NATUREZAREINFValidate)
Valor Informado deve ser Maior que Zero! Verifique.
Causa: Um dos valores monetários do lançamento avulso (Documento, Base, IR, PIS, CSLL, Agregado, COFINS) foi informado negativo.
Ação: Corrigir o valor para zero ou positivo.
Fonte: source/RFI040/UdmRFI040.pas:3328-3332 (TdmRFI040.ValorMaiorQueZeroValidate)
O Percentual informado não pode ser maior que 100%! Verifique
Causa: Um percentual (IR, PIS, CSLL ou Agregado) do lançamento avulso foi informado acima de 100%.
Ação: Informar um percentual entre 0 e 100%.
Fonte: source/RFI040/UdmRFI040.pas:3446-3450 (TdmRFI040.tabLANCTOAVULSOREINFPC_AGREGADOValidate)
O valor inserido é maior que 100! Verifique.
Causa: Os percentuais de CPD/RAT/Senar informados na guia R-2055, salvos por usuário ao fechar a tela, ultrapassam 100%.
Ação: Corrigir o percentual de CPD, RAT ou Senar para no máximo 100% antes de fechar a tela.
Fonte: source/RFI040/URFI040.pas:471-478 (TfrmRFI040.FormClose)
Por favor informe a data inicial!
Causa: No relatório da aba Recibo, a data final foi preenchida mas a inicial ficou vazia.
Ação: Preencher também a data inicial do período do relatório.
Fonte: source/RFI040/URFI040.pas:2172-2176 (TfrmRFI040.btnGeraRelClick)
Por favor informe a data final!
Causa: No relatório da aba Recibo, a data inicial foi preenchida mas a final ficou vazia.
Ação: Preencher também a data final do período do relatório.
Fonte: source/RFI040/URFI040.pas:2166-2170 (TfrmRFI040.btnGeraRelClick)
Regras de negócio
RFI040.R001(verregras/RFI040/RFI040.R001.md)RFI040.R002(verregras/RFI040/RFI040.R002.md)RFI040.R003(verregras/RFI040/RFI040.R003.md)RFI040.R004(verregras/RFI040/RFI040.R004.md)RFI040.R005(verregras/RFI040/RFI040.R005.md)RFI040.R006(verregras/RFI040/RFI040.R006.md)RFI040.R007(verregras/RFI040/RFI040.R007.md)RFI040.R008(verregras/RFI040/RFI040.R008.md)RFI040.R009(verregras/RFI040/RFI040.R009.md)RFI040.R010(verregras/RFI040/RFI040.R010.md)RFI040.R011(verregras/RFI040/RFI040.R011.md)RFI040.R012(verregras/RFI040/RFI040.R012.md)RFI040.R013(verregras/RFI040/RFI040.R013.md)RFI040.R014(verregras/RFI040/RFI040.R014.md)RFI040.R015(verregras/RFI040/RFI040.R015.md)RFI040.R016(verregras/RFI040/RFI040.R016.md)RFI040.R017(verregras/RFI040/RFI040.R017.md)RFI040.R018(verregras/RFI040/RFI040.R018.md)RFI040.R019(verregras/RFI040/RFI040.R019.md)RFI040.R020(verregras/RFI040/RFI040.R020.md)
Perguntas frequentes
P: Por que apareceu 'Não há Movimentações de Serviços Tomados neste período'?
R: Não existem notas de entrada de prestação de serviço no período/empresas filtrados para o R-2010; revise o período e as empresas marcadas na grade de filiais.
Fonte: source/RFI040/UdmRFI040.pas:636-637 (TdmRFI040.GeraXML_R2010)
P: Por que preciso informar o Nº Recibo ao marcar Retificação?
R: A retificação de um evento periódico exige o recibo do evento original protocolado no Reinf para que a Receita saiba qual registro está sendo corrigido.
Fonte: source/RFI040/UdmRFI040.pas:468-471 (TdmRFI040.GeraXML_R2010)
P: Por que o sistema pede o CNPJ/CPF ao gerar uma retificação?
R: O CNPJ/CPF identifica o prestador/beneficiário cujo evento original será retificado; sem ele o sistema não sabe qual registro relacionar ao recibo informado.
Fonte: source/RFI040/UdmRFI040.pas:473-474 (TdmRFI040.GeraXML_R2010)
P: Por que não consigo marcar 'Limpar base' no evento R-1000?
R: Essa opção só aparece e funciona quando o parâmetro TP_AMBSPEDREINF está configurado como 2 (Produção Restrita/Homologação); em Produção o campo fica oculto.
Fonte: source/RFI040/URFI040.pas:438-448 (iniciar)
P: Deu 'Falha na Assinatura do Evento...' ao enviar o lote, o que fazer?
R: O certificado digital configurado no parâmetro NR_SERIALCERT não conseguiu assinar o XML; verifique validade/instalação do certificado e gere o evento novamente.
Fonte: source/RFI040/URFI040.pas:1188-1193 (TfrmRFI040.bntEnviarREINFClick)
P: Por que os percentuais de IR/PIS/CSLL não aceitam mais de 100?
R: É uma validação de campo do lançamento avulso que bloqueia qualquer percentual acima de 100%, recalculando o valor em R$ a partir da base.
Fonte: source/RFI040/UdmRFI040.pas:3446-3450 (TdmRFI040.tabLANCTOAVULSOREINFPC_AGREGADOValidate)
P: Por que os campos de PIS/COFINS/CSLL sumiram no lançamento avulso e só aparece 'Agregado'?
R: A natureza de rendimento selecionada está marcada como ST_AGREGADOS='S' no cadastro TFI021, então a tela mostra apenas o campo de INSS Agregado.
Fonte: source/RFI040/UdmRFI040.pas:3528-3560 (TdmRFI040.ValidaAgregados)
P: Deu 'A Pessoa não Está Cadastrada'/'não Está Ativa' no lançamento avulso, como resolver?
R: O código de pessoa informado não existe ou está inativo no cadastro de Pessoas (TFA001); cadastre ou reative a pessoa antes de lançar.
Fonte: source/RFI040/UdmRFI040.pas:3308-3318 (TdmRFI040.tabLANCTOAVULSOREINFCD_PESSOAValidate)
P: Por que apareceu 'Nenhum evento Gerado!' ao clicar em Enviar REINF?
R: Nenhum checkbox da lista de eventos está marcado porque nenhum XML foi gerado ainda; gere ao menos um evento na guia correspondente antes de enviar.
Fonte: source/RFI040/URFI040.pas:1465-1467 (TfrmRFI040.bntEnviarREINFClick)
P: Por que o botão Consultar Protocolo não faz nada em alguns registros?
R: Ele só consulta o retorno quando o registro selecionado na grade de Dados Reinf já tem um Nº de Protocolo gravado (lote já transmitido com sucesso).
Fonte: source/RFI040/URFI040.pas:1573-1573 (TfrmRFI040.PngBitBtn1Click)
P: Qual a diferença entre regime de caixa e competência no cálculo do IR do R-4010?
R: É controlada pelo parâmetro ST_COMPETENCIAIRREINF: 'X' considera a data de pagamento (caixa) e 'C' considera a data de emissão do documento (competência).
Fonte: source/RFI040/UdmRFI040.pas:1852-1936 (TdmRFI040.GeraXML_R4010)
P: Como a tela decide quais empresas entram no arquivo do R-2010/R-2020/R-4010?
R: Sempre inclui a empresa logada, somando as demais empresas marcadas na grade de Empresas Filiais daquela guia do evento.
Fonte: source/RFI040/UdmRFI040.pas:401-418 (TdmRFI040.GeraXML_R2010)
Dúvidas em aberto (o código não responde)
- O uso de PARMFISCAL.TP_AMBSPEDREINF = 'X' em UdmRFI040.pas:1655 é intencional ou deveria ser ST_COMPETENCIAIRREINF (usado em todos os outros trechos do mesmo evento R-4010)? — TP_AMBSPEDREINF só assume '1' ou '2' no restante do módulo, então essa comparação parece sempre falsa, fazendo o cálculo cair sempre no valor integral da nota em vez do proporcional liquidado.
- O campo cdsENVIOLOTETP_ARQUIVO do lote do evento R-2060 deveria usar cdsEVENTOREINFR2060TP_ARQUIVO em vez de cdsEVENTOREINFR1000TP_ARQUIVO? — Os dois campos têm domínios diferentes (I/A/E no R-1000 vs O/R no R-2060); usar o valor do R-1000 pode gravar um indicador de tipo de arquivo sem sentido para o R-2060 na tabela SPEDREINF.
- Quais licenças (erpFiscal/erpContabil) realmente bloqueiam o acesso à tela e a quais abas/eventos especificamente? — O briefing cita as licenças exigidas para o módulo, mas a validação de licença não foi localizada no código lido nesta sessão (pode estar em rotina de abertura de tela fora dos arquivos analisados).