Pular para o conteúdo principal

CNF011 — Consulta de NFS-e (enriquecimento)

Menu: Faturamento > Consultas > Notas Fiscais > Consulta de NFS-e

Objetivo​

A CNF011 é a tela de consulta e acompanhamento do ciclo de vida das NFS-e (Nota Fiscal de Serviço Eletrônica) emitidas pelo ERP: mostra o status de cada RPS/lote junto ao provedor municipal, permite gerar e salvar os arquivos de envio no layout do provedor configurado, importar o retorno da prefeitura, cancelar/excluir notas, reenviar por e-mail, reimprimir e corrigir manualmente dados de notas já autenticadas. Todo o comportamento da tela (quais abas e botões aparecem, qual layout de arquivo é gerado) depende do provedor de NFS-e configurado para a empresa em MFA013, então a mesma tela se comporta de forma diferente conforme a prefeitura atendida. É usada principalmente pelo setor fiscal/faturamento após a emissão da nota, para garantir que ela seja de fato autenticada perante o município.

Fluxo principal​

  1. Abrir a tela pelo menu Faturamento > Consultas > Notas Fiscais > Consulta de NFS-e. O sistema carrega a configuração de NFS-e da empresa (MFA013) e ajusta abas/botões conforme o provedor. (Consulta) — source/CNF011/UCNF011.pas:274-391 (iniciar)
  2. O sistema abre automaticamente a aba Saldo (provedores webservice) ou Arquivos (provedores por arquivo) com o resultado da busca. (Saldo / Arquivos) — source/CNF011/UCNF011.pas:1636-1647 (TfrmCNF011.btnProcurarClick)
  3. Marcar (checkbox CHECKED) as notas/RPS que serão transmitidas, ou usar 'Marcar Todos'. (Saldo / Arquivos) — source/CNF011/UCNF011.pas:1853-1878 (TfrmCNF011.gridSALDOCellClick)
  4. Para provedores que retornam arquivo (aba Retorno visível), usar 'Importar' para carregar o arquivo de retorno da prefeitura; conferir os dados carregados e pressionar F6/Confirmar para gravar. (Retorno) — source/CNF011/UCNF011.pas:3840-3894 (TfrmCNF011.btniMPORTARClick)
  5. Clicar em 'Salvar' para efetivar as notas da aba Retorno: grava NR_NOTAFISCAL/Código de Autenticação em NOTA/NFSE e dispara GERA_INTEGRACAO. (Retorno) — source/CNF011/UCNF011.pas:3344-3441 (TfrmCNF011.btnSalvarClick)

Campos obrigatórios​

CampoCondiçãoMensagemFonte
NR_NFSE (Nº da Nota Fiscal)Ao clicar em 'Salvar NFS-e' (botão btnSalvarNFSe) enquanto o registro ainda não está em modo de edição manual (stEditandoNFSe = False) e o campo está em branco.É Obrigado Informar o Número da Nota Fiscal!source/CNF011/UCNF011.pas:6245-6252 (TfrmCNF011.btnSalvarNFSeClick)
CD_AUTENTICACAO (Código de Autenticação)Na tela 'Atualizar Dados da Nota Fiscal' (menu de contexto sobre a grade), só é possível gravar o Nº da Nota Fiscal ou o Nº da Nota de Serviço se o Código de Autenticação já estiver preenchido no formulário.Para definir a Nota Fiscal é necessário possuir o código de autenticação! / Para definir a Nota de Serviço é necessário possuir o código de autenticação!source/CNF011/UCNF011.pas:7880-7884 (TfrmCNF011.AtualizarDadosdaNotaFiscal1Click)
Pelo menos uma nota marcada (CHECKED = 1) na gradeObrigatório marcar ao menos um registro da grade (aba Saldo/Arquivos) antes de clicar em 'Salvar' (aba Retorno) ou 'Gerar Arquivos'.Nenhuma Nota Informada! Verifique! / Nenhuma Nota Fiscal foi Selecionada. Verifique! / Nenhuma Nota Fiscal Foi Selecionada. Verifique!source/CNF011/UCNF011.pas:3424-3433 (TfrmCNF011.btnSalvarClick)
Código de Autenticação (cdsDADOSNF) não repetidoAo informar um Código de Autenticação no formulário auxiliar de atualização de dados da nota, o sistema impede gravar um valor já existente em NFSE.Este Código de Autenticação já existe no Sistema.source/CNF011/UdmCNF011.pas:680-696 (TdmCNF011.cdsDADOSNFCD_AUTENTICACAOValidate)

Mensagens: causa e ação​

Não foi Encontrado Parâmetros para NFS-e para a Empresa! Verifique [MFA013]​

Causa: A empresa selecionada na sessão não tem cadastro de Configuração de NFS-e (provedor emissor) em MFA013.

Ação: Cadastrar/associar o provedor NFS-e da empresa na tela MFA013 e reabrir a CNF011.

Fonte: source/CNF011/UCNF011.pas:306-327 (iniciar)

A Data Final não pode ser Menor que a Data Inicial!​

Causa: No filtro da aba Consulta, a Data Final informada é anterior à Data Inicial.

Ação: Corrigir a Data Final para uma data igual ou posterior à Data Inicial e buscar novamente.

Fonte: source/CNF011/UCNF011.pas:1425-1430 (TfrmCNF011.btnProcurarClick)

Deseja Liberar as RPSs para Reenvio?​

Causa: O usuário marcou uma ou mais RPS com problema (lote aguardando ou não processado) e clicou em 'Alterar Reenvio'.

Ação: Confirmar para remover o vínculo da RPS com o lote atual, permitindo que ela seja incluída em um novo lote no próximo envio.

Fonte: source/CNF011/UCNF011.pas:1791-1793 (TfrmCNF011.btnAlterarReenvioClick)

O Lote Selecionado, está [EM PROCESSAMENTO], deseja liberar mesmo assim a RPS?​

Causa: A RPS marcada pertence a um lote com status 'Em Processamento' (ST_LOTE=1), que normalmente ainda está sendo tratado pela prefeitura/webservice.

Ação: Confirmar apenas se tiver certeza de que o lote realmente travou; caso contrário, aguardar o processamento normal antes de liberar.

Fonte: source/CNF011/UCNF011.pas:1811-1813 (TfrmCNF011.btnAlterarReenvioClick)

É Obrigado Informar o Número da Nota Fiscal!​

Causa: O usuário tentou clicar em 'Salvar NFS-e' com o campo Nº NFS-e vazio, fora do fluxo de edição manual iniciado pelo botão Editar.

Ação: Informar o número da nota fiscal (Nº NFS-e) retornado pela prefeitura antes de salvar.

Fonte: source/CNF011/UCNF011.pas:6245-6252 (TfrmCNF011.btnSalvarNFSeClick)

Não é Possível Selecionar Notas Já Transmitidas!​

Causa: Uma das notas marcadas para geração de arquivo já está com status de NFS-e 'Transmitida' (ST_NFSE='T'), ou seja, já foi enviada/autenticada.

Ação: Desmarcar a nota já transmitida; se precisar reenviá-la, usar antes 'Alterar Reenvio' para liberar o vínculo do lote.

Fonte: source/CNF011/UCNF011.pas:4974-4976 (TfrmCNF011.btnGera_ArquivosClick)

Não é Possível Selecionar uma Nota Fiscal Cancelada no Sistema que Ainda não foi Transmitida.​

Causa: A nota está com status Cancelada (ST_NOTA='C') no ERP, mas nunca chegou a ter Código de Autenticação (nunca foi enviada/autenticada na prefeitura).

Ação: Desmarcar essa nota da seleção; ela não deve ser incluída em arquivo de envio pois não existe RPS/NFS-e válida a transmitir.

Fonte: source/CNF011/UCNF011.pas:4978-4979 (TfrmCNF011.btnGera_ArquivosClick)

A Empresa NFS-e não aceita mais de um Serviço por Nota! Utilize o Agrupamento de Serviços [MFA013]​

Causa: O provedor configurado (ex.: SIGISS, STS) exige que cada NFS-e tenha apenas um item de serviço, mas a nota selecionada possui mais de um item.

Ação: Ativar o parâmetro 'Agrupa Serviços' em MFA013 para consolidar os itens em um único serviço antes de gerar o arquivo, ou reemitir a nota com apenas 1 item.

Fonte: source/CNF011/UCNF011.pas:3142-3143 (TfrmCNF011.geraNota), source/CNF011/UCNF011.pas:1220-1221 (TfrmCNF011.GeraArquivoSTS)

O provedor não aceita mais de um serviço por arquivo xml. Favor utilizar o parâmetro "Agrupa Serviços"! [MFA013]​

Causa: Provedor Futurize configurado sem o parâmetro StAgrupaServico ativo em MFA013, ao tentar gerar o XML de envio.

Ação: Habilitar o parâmetro 'Agrupa Serviços' em MFA013 para este provedor antes de gerar o arquivo.

Fonte: source/CNF011/UCNF011.pas:5122-5125 (TfrmCNF011.btnGera_ArquivosClick)

O cancelamento via WebService não está disponivel para este provedor,o cancelamento deve ser feito primeiramente pelo sistema da prefeitura! Deseja continuar com o cancelamento no sistema?​

Causa: O provedor configurado é UDigital V2 ou GovDigital, que não suportam cancelamento automático via webservice a partir do ERP.

Ação: Cancelar a nota primeiro no portal/sistema da prefeitura; confirmar a mensagem apenas para refletir o cancelamento também no ERP (módulo MNF005/MNF006).

Fonte: source/CNF011/UCNF011.pas:5269-5273 (TfrmCNF011.btnCancelarRpsClick)

W-0017​

Causa: O usuário tentou consultar a Nota (CNF001), a Pessoa (TFA001), o Produto (TPO001) ou realizar o Cancelamento (MNF005/MNF006) a partir da CNF011, mas não possui permissão de acesso ao respectivo programa no menu.

Ação: Solicitar ao administrador a liberação de acesso ao módulo correspondente (CNF001, TFA001, TPO001, MNF005 ou MNF006) no cadastro de permissões do usuário.

Fonte: source/CNF011/UCNF011.pas:1905-1907 (TfrmCNF011.btnConsultaNFClick), source/CNF011/UCNF011.pas:5280-5282 (TfrmCNF011.btnCancelarRpsClick), source/CNF011/UCNF011.pas:5327-5329 (TfrmCNF011.btnConsultarProdutoClick)

O Usuário Não Tem Acesso a Alteração de Nota. Verifique! [ADM012]​

Causa: O usuário logado não tem o parâmetro de permissão para alterar dados de nota (PARMUSUARIO.ST_ALTERANOTA) habilitado para a empresa atual.

Ação: Solicitar ao administrador que habilite a permissão de 'Alterar Nota' para o usuário em Parâmetros de Usuário, para a empresa em questão.

Fonte: source/CNF011/UCNF011.pas:7847-7848 (TfrmCNF011.AtualizarDadosdaNotaFiscal1Click)

Somente é Possível Alteração de Nota "Válida" e "Cancelada". Verifique!​

Causa: O usuário tentou usar 'Atualizar Dados da Nota Fiscal' em uma nota cujo status não é Válida (V) nem Cancelada (C) — por exemplo, uma nota em outro status intermediário.

Ação: Selecionar uma nota com status Válida ou Cancelada antes de usar essa função de atualização manual.

Fonte: source/CNF011/UCNF011.pas:7850-7853 (TfrmCNF011.AtualizarDadosdaNotaFiscal1Click)

Não Existe Notas Validas Selecionadas!​

Causa: Nenhuma das notas marcadas na grade usa o layout de impressão LNF220, único suportado pela exportação em lote (ZIP com PDFs).

Ação: Marcar apenas notas cuja Empresa/Série/Tipo de Nota está configurada em PARMNOTA com layout LNF220, ou ajustar o layout da nota antes de exportar.

Fonte: source/CNF011/UCNF011.pas:7586-7612 (TfrmCNF011.btnExportarNotaClick)

Regras de negócio​

  • CNF011.R001 (ver regras/CNF011/CNF011.R001.md)
  • CNF011.R002 (ver regras/CNF011/CNF011.R002.md)
  • CNF011.R003 (ver regras/CNF011/CNF011.R003.md)
  • CNF011.R004 (ver regras/CNF011/CNF011.R004.md)
  • CNF011.R005 (ver regras/CNF011/CNF011.R005.md)
  • CNF011.R006 (ver regras/CNF011/CNF011.R006.md)
  • CNF011.R007 (ver regras/CNF011/CNF011.R007.md)
  • CNF011.R008 (ver regras/CNF011/CNF011.R008.md)
  • CNF011.R009 (ver regras/CNF011/CNF011.R009.md)
  • CNF011.R010 (ver regras/CNF011/CNF011.R010.md)
  • CNF011.R011 (ver regras/CNF011/CNF011.R011.md)
  • CNF011.R012 (ver regras/CNF011/CNF011.R012.md)
  • CNF011.R013 (ver regras/CNF011/CNF011.R013.md)
  • CNF011.R014 (ver regras/CNF011/CNF011.R014.md)
  • CNF011.R015 (ver regras/CNF011/CNF011.R015.md)
  • CNF011.R016 (ver regras/CNF011/CNF011.R016.md)
  • CNF011.R017 (ver regras/CNF011/CNF011.R017.md)
  • CNF011.R018 (ver regras/CNF011/CNF011.R018.md)
  • CNF011.R019 (ver regras/CNF011/CNF011.R019.md)
  • CNF011.R020 (ver regras/CNF011/CNF011.R020.md)
  • CNF011.R021 (ver regras/CNF011/CNF011.R021.md)
  • CNF011.R022 (ver regras/CNF011/CNF011.R022.md)
  • CNF011.R023 (ver regras/CNF011/CNF011.R023.md)

Perguntas frequentes​

P: Abri a CNF011 para uma empresa e a tela não mostra nenhuma aba de resultado nem os botões de ação. Por quê? R: A empresa não possui parâmetros de NFS-e cadastrados no módulo MFA013 (Config. NFS-e). O sistema exibe a mensagem informativa e oculta Novo, Salvar, Procurar, Excluir e as abas Saldo/Arquivos/Retorno. Peça para cadastrar/verificar o provedor NFS-e da empresa em MFA013. Fonte: source/CNF011/UCNF011.pas:306-327 (iniciar)

P: Cliquei em Procurar e deu 'A Data Final não pode ser Menor que a Data Inicial!'. Como resolvo? R: Ajuste o campo Data Final para uma data igual ou posterior à Data Inicial informada no filtro da aba Consulta antes de buscar novamente. Fonte: source/CNF011/UCNF011.pas:1425-1430 (TfrmCNF011.btnProcurarClick)

P: Por que o botão da nota mudou de 'Cancelar Nota' para 'Excluir Nota'? R: O rótulo do botão acompanha o status da nota (ST_NOTA): se a nota está 'Válida' (V) o botão mostra 'Cancelar Nota'; se já está 'Cancelada' (C) mostra 'Excluir Nota', pois nesse caso a ação abre o módulo de exclusão (MNF006) em vez do de cancelamento (MNF005). Fonte: source/CNF011/UdmCNF011.pas:283-283 (TdmCNF011.tabSALDOAfterScroll), source/CNF011/UCNF011.pas:5275-5314 (TfrmCNF011.btnCancelarRpsClick)

P: Não consigo digitar no campo Nº NFS-e / Código de Autenticação na aba Saldo. Está travado? R: Esses campos só ficam editáveis quando a nota ainda não tem Código de Autenticação preenchido (nota ainda não autenticada na prefeitura). Se já houver autenticação, os campos ficam somente leitura; para provedor ENota é possível liberar a edição clicando no botão Editar, quando ele estiver visível. Fonte: source/CNF011/UdmCNF011.pas:263-265 (TdmCNF011.tabSALDOAfterScroll), source/CNF011/UCNF011.pas:7822-7836 (TfrmCNF011.btnEditarClick)

P: Ao gerar o arquivo, deu a mensagem 'A Empresa NFS-e não aceita mais de um Serviço por Nota! Utilize o Agrupamento de Serviços [MFA013]'. Como corrijo? R: O provedor configurado (ex.: SIGISS/Colombo, STS/Parnaíba, entre outros) só aceita um item de serviço por nota fiscal. Ative o parâmetro 'Agrupa Serviços' em MFA013 para consolidar os itens em um único serviço antes de gerar o arquivo, ou emita a nota com um único item de serviço. Fonte: source/CNF011/UCNF011.pas:3142-3143 (TfrmCNF011.geraNota), source/CNF011/UCNF011.pas:1220-1221 (TfrmCNF011.GeraArquivoSTS)

P: Marquei uma nota para gerar arquivo, mas o sistema recusa com 'Não é Possível Selecionar Notas Já Transmitidas!'. O que fazer? R: A nota já está com status de NFS-e 'Transmitida' (ST_NFSE = 'T'), ou seja, já foi enviada e autenticada anteriormente (exceto para o provedor Barueri, que permite reenvio). Desmarque essa nota; se ela precisar ser reenviada, use antes o botão 'Alterar/Liberar Reenvio'. Fonte: source/CNF011/UCNF011.pas:4974-4976 (TfrmCNF011.btnGera_ArquivosClick)

P: Como faço para reenviar uma RPS que ficou com erro no lote? R: Na aba Saldo, marque a(s) NFS-e desejada(s) (checkbox) e clique em 'Alterar Reenvio'. O sistema só libera RPS cujo lote está em status 'Aguardando' ou 'Não Processado'; se o lote estiver 'Em Processamento', pede confirmação extra antes de liberar. Fonte: source/CNF011/UCNF011.pas:1791-1841 (TfrmCNF011.btnAlterarReenvioClick)

P: Deu a mensagem 'O Usuário Não Tem Acesso a Alteração de Nota. Verifique! [ADM012]' ao tentar atualizar dados da nota. Como libero? R: O usuário não tem o parâmetro 'Permite Alterar Nota' habilitado no cadastro de Parâmetros do Usuário (PARMUSUARIO) para a empresa. Solicite ao administrador que habilite essa permissão para o usuário na tela de parâmetros de usuário. Fonte: source/CNF011/UCNF011.pas:7847-7848 (TfrmCNF011.AtualizarDadosdaNotaFiscal1Click), source/CNF011/UCNF011.pas:414-419 (iniciar)

P: Por que ao importar o retorno da prefeitura o sistema diz que as notas já foram importadas? R: Para cada registro do arquivo de retorno, o sistema consulta o ST_NFSE da nota correspondente; se já estiver 'T' (Transmitida/autenticada), o registro é descartado da importação por já ter sido processado anteriormente. Fonte: source/CNF011/UCNF011.pas:3882-3893 (TfrmCNF011.btniMPORTARClick)

P: Por que o botão 'Exportar Nota' não aparece para a nota que estou consultando? R: Esse botão só fica visível quando o layout de impressão configurado em PARMNOTA para aquela empresa/série/tipo de nota é o LNF220. Para outros layouts a exportação em lote (ZIP com PDFs) não está disponível. Fonte: source/CNF011/UdmCNF011.pas:326-337 (TdmCNF011.tabSALDOAfterScroll)

P: Marquei notas e cliquei em Exportar Nota, mas deu 'Não Existe Notas Validas Selecionadas!'. Por quê? R: Nenhuma das notas marcadas usa o layout LNF220 (o único suportado pela exportação em lote). Verifique o layout configurado em PARMNOTA para a série/tipo de nota das notas selecionadas. Fonte: source/CNF011/UCNF011.pas:7586-7612 (TfrmCNF011.btnExportarNotaClick)

Dúvidas em aberto (o código não responde)​

  • O que representam os status de lote ST_LOTE = 5 (branco) e ST_LOTE = 7 (preto/texto branco) exibidos na grade de Saldo? — gridSALDODrawColumnCell (source/CNF011/UCNF011.pas:1717-1768) pinta a coluna NR_RPS conforme ST_LOTE (1=Aguardando, 2=Não Processado, 3=Processado, 4=Aguardando Cancelamento, 6=Cancelado), mas os checkboxes de filtro da aba Consulta só cobrem 1,2,3,4,6. Os valores 5 e 7 aparecem apenas no código de cores, sem checkbox equivalente nem comentário explicando seu significado de negócio.
  • A validação de Código de Autenticação duplicado em cdsDADOSNF está comparando o campo certo? — TdmCNF011.cdsDADOSNFCD_AUTENTICACAOValidate (source/CNF011/UdmCNF011.pas:680-696) recebe o Validate do campo CD_AUTENTICACAO, mas a consulta SQL filtra 'WHERE CD_AUTENTICACAO = ' usando dmCNF011.cdsDADOSNFNR_NOTASERVICO.AsString (outro campo) em vez de Sender.AsString (o valor digitado). Isso pode fazer a validação nunca disparar corretamente, ou disparar por um motivo diferente do esperado.
  • A exigência de Código de Verificação da Nota Fiscal para o provedor Tinus foi removida de propósito? — Em TfrmCNF011.btnSalvarNFSeClick (source/CNF011/UCNF011.pas:6254-6263) existe um bloco inteiro comentado ({ ... }) que validaria 'É Obrigatório Informar o Código de Verificação da Nota Fiscal!' para o provedor Tinus quando CD_AUTENTICACAO está vazio. Não há indicação se a remoção foi intencional (regra descontinuada) ou um bug de código morto.