MFA013 — Parâmetros NFSE (enriquecimento)
Menu: Faturamento > Movimentações > Parâmetros NFSE
Objetivo
A tela MFA013 (Parâmetros NFSE) configura, por empresa, tudo o que é necessário para a emissão de Nota Fiscal de Serviço Eletrônica: certificado digital, ambiente de emissão (homologação/produção), provedor municipal de NFS-e e as opções específicas de impressão/envio de cada provedor. Também controla, quando o parâmetro geral do sistema permite, quais usuários podem operar a NFS-e de cada empresa. Uma parte importante da tela trata do envio direto ao Padrão Nacional (DPS/NFS-e Nacional): ao ativá-lo, o sistema força o uso do provedor ACBr, exige série numérica da prefeitura e garante a numeração sequencial da DPS. Esta configuração é pré-requisito para a emissão de notas e para a consulta feita no módulo CNF011.
Fluxo principal
- Ao abrir a tela, o sistema já carrega a empresa da sessão atual (ou a primeira do cadastro) e monta a lista de provedores disponíveis. (Aba NFS-e) —
source/MFA013/UformMFA013.pas:121-128 (iniciar) - Usuário informa/troca o código da empresa (ou usa F9 para buscar entre as empresas do seu usuário); o sistema valida a existência da empresa. (Aba Empresa) —
source/MFA013/UframeMFA013.pas:370-387 (TframeMFA013.edtCD_EMPRESAKeyDown) - Usuário preenche certificado digital (serial/senha, ou F9 para localizar certificados instalados), ambiente (homologação/produção) e demais dados fiscais da aba NFS-e. (Aba NFS-e) —
source/MFA013/UframeMFA013.pas:399-419 (TframeMFA013.editNmArquivoCertKeyDown) - Se a empresa deve emitir direto ao Padrão Nacional, marca-se "Enviar direto ao Padrão Nacional": o sistema migra o provedor para ACBr, trava o Agrupa Serviços e exige a Série Prefeitura só com números. (Aba NFS-e) —
source/MFA013/UframeMFA013.pas:939-965 (TframeMFA013.chkST_ENVIANACIONALClick) - Se o provedor for TecnoSpeed, o sistema resolve automaticamente o padrão municipal pelo IBGE da empresa; havendo mais de um padrão compatível, abre tela para o usuário escolher (também acessível pelo botão de seleção manual). (Aba NFS-e) —
source/MFA013/UdmMFA013.pas:474-513 (TdmMFA013.ResolverProvedorTecnoSpeed) - Se o parâmetro do sistema permitir controle de usuários por empresa NFS-e, o usuário cadastra na aba "NFS-e Usuário" quem pode operar a NFS-e desta empresa. (Aba NFS-e Usuário) —
source/MFA013/UframeMFA013.pas:358-361 (TframeMFA013.FrameEnter) - Usuário clica em OK: o sistema grava em sequência os dados da empresa, do usuário e do provedor, e, se o envio for ao Padrão Nacional, garante a existência da sequência numérica SEQ_DPS. (Aba NFS-e) —
source/MFA013/UframeMFA013.pas:258-299 (TframeMFA013.actionOKExecute)
Campos obrigatórios
| Campo | Condição | Mensagem | Fonte |
|---|---|---|---|
| Código da Empresa | Sempre, ao gravar o cadastro. Deve corresponder a uma empresa existente (senão W-1736). | W-1736 | source/MFA013/UdmMFA013.dfm:84-93 |
| Nome da Empresa | Preenchido automaticamente ao validar o código da empresa; obrigatório no dataset. | source/MFA013/UdmMFA013.dfm:95-104 | |
| Serial do Certificado | Sempre, ao gravar a aba NFS-e (Required=True no dataset, cobrado por CamposObrigatorios). | source/MFA013/UdmMFA013.dfm:105-112 | |
| Empresa NFS-e (Provedor) | Sempre, ao gravar a aba do provedor (CD_PROVEDOR Required=True). | source/MFA013/UdmMFA013.dfm:535-547 | |
| Série Prefeitura | Somente quando "Enviar direto ao Padrão Nacional" está marcado; neste caso deve ser preenchida e conter apenas números. | E-0000 | source/MFA013/UdmMFA013.pas:400-426 (TdmMFA013.ValidaSeriePrefeituraNacional) |
| Quantidade de Notas por Lote | Sempre; deve ser um valor entre 1 e 30. | W-1739 | source/MFA013/UdmMFA013.pas:380-387 (TdmMFA013.qryCadastroQT_NOTASLOTEValidate) |
| Código do Usuário (aba NFS-e Usuário) | Ao incluir um vínculo de usuário na aba NFS-e Usuário; deve existir no cadastro de usuários e não estar vinculado a outra empresa. | W-0007 / W-1737 | source/MFA013/UdmMFA013.dfm:435-444 |
Mensagens: causa e ação
W-0007
Causa: O usuário digitou, na aba NFS-e Usuário, um código de usuário que não existe na tabela USUARIO.
Ação: Cadastrar o usuário no módulo ADM001 (ou usar F9 para buscar um código válido) e repetir o vínculo.
Fonte: source/MFA013/UdmMFA013.pas:212-243 (TdmMFA013.tabUsuarioCD_USUARIOValidate)
W-1736
Causa: O código de empresa informado não existe na tabela EMPRESA.
Ação: Conferir o código no cadastro de empresas (ADM002) e informar um código existente.
Fonte: source/MFA013/UdmMFA013.pas:179-189 (TdmMFA013.qryCadastroCD_EMPRESAValidate)
W-1737
Causa: O usuário que está sendo vinculado à NFS-e desta empresa já está cadastrado como operador de NFS-e de outra empresa (CONFIGNFSEUSUARIO).
Ação: Remover o vínculo do usuário na empresa anterior (nesta mesma tela, selecionando a outra empresa) antes de vinculá-lo à empresa atual.
Fonte: source/MFA013/UdmMFA013.pas:226-234 (TdmMFA013.tabUsuarioCD_USUARIOValidate)
W-1738
Causa: O texto digitado no campo de máscara de arredondamento de valores do XML não corresponde a nenhuma das máscaras aceitas pelo sistema.
Ação: Informar exatamente uma das máscaras válidas: #0.0, #0.00, #0.000, #0.0000 ou #0.00000.
Fonte: source/MFA013/UdmMFA013.pas:369-377 (TdmMFA013.tabPROVEDORDS_MASCARAFLOATValidate)
W-1739
Causa: O valor informado em Quantidade de Notas por Lote é menor ou igual a 0, ou maior que 30.
Ação: Informar um valor entre 1 e 30 notas por lote.
Fonte: source/MFA013/UdmMFA013.pas:380-386 (TdmMFA013.qryCadastroQT_NOTASLOTEValidate)
W-1806
Causa: O usuário pressionou F9 para buscar certificados digitais sem antes informar o código da empresa.
Ação: Informar/selecionar a empresa no campo Código da Empresa antes de buscar o certificado.
Fonte: source/MFA013/UframeMFA013.pas:405-411 (TframeMFA013.editNmArquivoCertKeyDown)
W-2107
Causa: O código informado no campo Indicador de Operação não existe no cadastro de indicadores (TFI023).
Ação: Cadastrar o indicador de operação no TFI023 (ou usar F9 para buscar um código existente) antes de informá-lo aqui.
Fonte: source/MFA013/UframeMFA013.pas:1940-1945 (TframeMFA013.edtCD_INDOPExit)
É Obrigatório informar a Série Prefeitura para o envio ao Padrão Nacional!
Causa: A opção "Enviar direto ao Padrão Nacional" está marcada e o campo Série Prefeitura está vazio.
Ação: Preencher a Série Prefeitura, na aba NFS-e, com um valor numérico antes de salvar.
Fonte: source/MFA013/UdmMFA013.pas:405-416 (TdmMFA013.ValidaSeriePrefeituraNacional)
A Série Prefeitura deve conter Somente Números para o envio ao Padrão Nacional!
Causa: A Série Prefeitura contém algum caractere que não é dígito, com o envio direto ao Padrão Nacional marcado.
Ação: Digitar apenas números na Série Prefeitura.
Fonte: source/MFA013/UdmMFA013.pas:418-424 (TdmMFA013.ValidaSeriePrefeituraNacional)
Nenhum padrao TecnoSpeed atende o IBGE %s.
Causa: O provedor selecionado é TecnoSpeed, mas nenhum arquivo de padrão municipal instalado cobre o IBGE da empresa em edição.
Ação: Verificar se o pacote de padrões TecnoSpeed do município está instalado na pasta de provedores; se não estiver, providenciar/atualizar o arquivo com a equipe técnica.
Fonte: source/MFA013/UdmMFA013.pas:486-496 (TdmMFA013.ResolverProvedorTecnoSpeed)
Selecione um padrao TecnoSpeed.
Causa: O usuário clicou em OK na tela de seleção de padrão TecnoSpeed sem marcar nenhum item da lista.
Ação: Selecionar um padrão na lista antes de confirmar.
Fonte: source/MFA013/UformMFA013PadTS.pas:198-205 (TformMFA013PadTS.btnOKClick)
Selecione um provedor.
Causa: O usuário clicou em "Abrir XML" na tela de seleção de padrão TecnoSpeed sem selecionar um item da lista.
Ação: Selecionar um padrão/provedor na lista antes de tentar abrir o XML.
Fonte: source/MFA013/UformMFA013PadTS.pas:222-226 (TformMFA013PadTS.btnAbrirXMLClick)
Arquivo XML nao encontrado: %s
Causa: O arquivo de padrão TecnoSpeed listado na tela não está mais no disco no caminho esperado (pasta de provedores).
Ação: Verificar se a pasta de padrões TecnoSpeed foi movida/apagada e reinstalar/repor o pacote de padrões do provedor.
Fonte: source/MFA013/UformMFA013PadTS.pas:230-235 (TformMFA013PadTS.btnAbrirXMLClick)
Regras de negócio
MFA013.R001(verregras/MFA013/MFA013.R001.md)MFA013.R002(verregras/MFA013/MFA013.R002.md)MFA013.R003(verregras/MFA013/MFA013.R003.md)MFA013.R004(verregras/MFA013/MFA013.R004.md)MFA013.R005(verregras/MFA013/MFA013.R005.md)MFA013.R006(verregras/MFA013/MFA013.R006.md)MFA013.R007(verregras/MFA013/MFA013.R007.md)MFA013.R008(verregras/MFA013/MFA013.R008.md)MFA013.R009(verregras/MFA013/MFA013.R009.md)MFA013.R010(verregras/MFA013/MFA013.R010.md)MFA013.R011(verregras/MFA013/MFA013.R011.md)MFA013.R012(verregras/MFA013/MFA013.R012.md)MFA013.R013(verregras/MFA013/MFA013.R013.md)MFA013.R014(verregras/MFA013/MFA013.R014.md)MFA013.R015(verregras/MFA013/MFA013.R015.md)MFA013.R016(verregras/MFA013/MFA013.R016.md)MFA013.R017(verregras/MFA013/MFA013.R017.md)MFA013.R018(verregras/MFA013/MFA013.R018.md)
Perguntas frequentes
P: Por que aparece a mensagem "Empresa não cadastrada" ao informar o código da empresa?
R: O código digitado não existe na tabela EMPRESA. Verifique o código no cadastro de empresas (ADM002) e cadastre-a antes de configurar a NFS-e.
Fonte: source/MFA013/UdmMFA013.pas:174-199 (TdmMFA013.qryCadastroCD_EMPRESAValidate)
P: Deu "Usuário não Cadastrado. Verifique [ADM001]!" ao tentar vincular um usuário na aba NFS-e Usuário. O que fazer?
R: O código de usuário informado não existe na tabela USUARIO. Cadastre o usuário no ADM001 antes de vinculá-lo a esta empresa NFS-e.
Fonte: source/MFA013/UdmMFA013.pas:212-243 (TdmMFA013.tabUsuarioCD_USUARIOValidate)
P: Por que não consigo vincular o mesmo usuário à NFS-e de duas empresas diferentes?
R: O sistema não permite: um usuário já cadastrado como operador de NFS-e de outra empresa é bloqueado com "O Usuário já está Cadastrado para a Empresa: <nome>". Remova o vínculo na empresa anterior (nesta mesma tela) antes de recadastrá-lo aqui.
Fonte: source/MFA013/UdmMFA013.pas:226-235 (TdmMFA013.tabUsuarioCD_USUARIOValidate)
P: Deu "Máscara Inválida!" ao configurar a máscara de arredondamento de valores do XML. Quais valores são aceitos?
R: Só são aceitas as máscaras #0.0, #0.00, #0.000, #0.0000 ou #0.00000. Digite uma delas exatamente (esse campo só aparece para os provedores Ginfes, NotaControl, WebIss e equivalentes).
Fonte: source/MFA013/UdmMFA013.pas:367-378 (TdmMFA013.tabPROVEDORDS_MASCARAFLOATValidate)
P: Por que o sistema não deixa gravar mais de 30 notas por lote?
R: A Quantidade de Notas por Lote é limitada a um valor entre 1 e 30; fora desse intervalo aparece "O lote deve conter entre 1 e 30 notas". Ajuste o valor para dentro da faixa permitida.
Fonte: source/MFA013/UdmMFA013.pas:380-387 (TdmMFA013.qryCadastroQT_NOTASLOTEValidate)
P: Deu "É Obrigatório informar a Série Prefeitura para o envio ao Padrão Nacional!" ao salvar, mesmo com a série de outro provedor preenchida.
R: Essa exigência só vale para a Série Prefeitura do provedor ACBr quando "Enviar direto ao Padrão Nacional" está marcado. Preencha o campo Série Prefeitura, na aba NFS-e, com um valor numérico.
Fonte: source/MFA013/UdmMFA013.pas:405-416 (TdmMFA013.ValidaSeriePrefeituraNacional)
P: Por que a Série Prefeitura não aceita letras?
R: Quando "Enviar direto ao Padrão Nacional" está marcado, o campo Série Prefeitura substitui a série da nota no XML do Padrão Nacional e precisa ser numérica; o sistema bloqueia a digitação de qualquer caractere que não seja número e recusa gravar com letras.
Fonte: source/MFA013/UframeMFA013.pas:967-985 (TframeMFA013.dbedtCD_SERIEPREFEITURAKeyPress), source/MFA013/UdmMFA013.pas:418-425 (TdmMFA013.ValidaSeriePrefeituraNacional)
P: Marquei "Enviar direto ao Padrão Nacional" e o campo Empresa NFS-e (provedor) mudou sozinho para ACBr e ficou travado. Isso é normal?
R: Sim, é intencional: o Padrão Nacional só é tratado pelo provedor ACBr, então o sistema muda automaticamente o provedor para ACBr e trava o campo e o Agrupa Serviços enquanto a opção estiver marcada.
Fonte: source/MFA013/UframeMFA013.pas:853-937 (TframeMFA013.AplicarRegrasPadraoNacional)
P: O botão de selecionar padrão TecnoSpeed não abre a tela sozinho quando eu escolho o provedor TecnoSpeed. É esperado?
R: Sim. A seleção automática só grava direto quando existe exatamente um padrão compatível com o IBGE da empresa; com mais de um padrão ou nenhum, é preciso clicar no botão ao lado do combo de provedor para abrir a tela de seleção manualmente.
Fonte: source/MFA013/UdmMFA013.pas:474-513 (TdmMFA013.ResolverProvedorTecnoSpeed)
P: Deu "Indicador de Operação não encontrado. Verifique [TFI023]!" ao preencher o Código AEDF-e/Indicador de Operação.
R: O código informado não existe no cadastro de Indicadores de Operação (TFI023). Cadastre o indicador nessa tela antes de informá-lo aqui, ou use F9 para buscar um código válido.
Fonte: source/MFA013/UframeMFA013.pas:1933-1947 (TframeMFA013.edtCD_INDOPExit)
P: Por que a aba "NFS-e Usuário" não aparece na minha tela?
R: Essa aba só é exibida quando o parâmetro do sistema que controla o vínculo usuário-empresa para NFS-e está ligado (PARMSISTEMA.ST_EMPRESANFSE = 'S'). Se precisar restringir quais usuários emitem NFS-e por empresa, peça para verificar esse parâmetro geral do sistema.
Fonte: source/MFA013/UframeMFA013.pas:358-361 (TframeMFA013.FrameEnter)
P: Por que o combo "Optante Simples Município" só aparece às vezes?
R: Esse campo só é usado pelo provedor Coplan (código 56); para os demais provedores ele fica oculto e o valor é limpo automaticamente.
Fonte: source/MFA013/UframeMFA013.pas:553-554 (StrToInteger), source/MFA013/UframeMFA013.pas:663-676 (StrToInteger)
P: O campo "Gerar Totais dos Tributos" sumiu depois que salvei a tela. Por quê?
R: Esse campo só vale para o provedor ACBr (99): ao clicar em OK, se o provedor selecionado não for ACBr, o sistema zera esse campo automaticamente antes de gravar.
Fonte: source/MFA013/UframeMFA013.pas:269-272 (TframeMFA013.actionOKExecute)
Dúvidas em aberto (o código não responde)
- Se o usuário salvar a tela com o Padrão Nacional marcado, fechar o módulo e reabrir para desmarcar, o provedor/Agrupa Serviços anteriores são restaurados, ou ficam perdidos? — FProvedorAnterior/FAgrupaServicoAnterior (UframeMFA013.pas:199-204,846-851,884-912) só existem em memória durante a sessão do frame; não há evidência de que esse estado seja persistido em disco/base para sobreviver a um fechamento e reabertura do módulo.
- Qual é exatamente o efeito e onde é configurado o parâmetro PARMSISTEMA.ST_EMPRESANFSE que habilita a aba NFS-e Usuário? — O módulo apenas lê o parâmetro (UframeMFA013.pas:359-361); não encontrei, dentro dos arquivos do MFA013, onde esse parâmetro é definido/editado.
- Por que o campo Serial do Certificado é obrigatório (Required=True) independente do provedor escolhido, mesmo para provedores que talvez não usem certificado digital? — UdmMFA013.dfm:105-112 marca NR_SERIALCERT como Required=True sem condicionar ao provedor selecionado; o código não trata exceção para provedores sem certificado.
- O caminho de menu (Faturamento > Movimentações > Parâmetros NFSE) e a licença exigida (erpNFe) vêm do briefing da tarefa, não foram confirmados em código lido nesta sessão. — Não há arquivo de menu/licenciamento entre os arquivos do módulo fornecidos para verificar essa associação.