Passo a passo: | O JOB FATJOBNFE foi disponibilizado no ambiente SIGAFAT, com o objetivo de efetivar o cancelamento de Notas Fiscais (NFe - Modelo 55 ou NFSe), através da autorização da SEFAZ/Prefeitura.
Quando a NFe receber a autorização de cancelamento, o JOB irá permitir a exclusão do Documento de Saída, através da rotina MATA521.
Desta forma é possível evitar que Documentos de Saída sejam excluídos do ERP, sem a devida autorização para cancelamento emitida pela SEFAZ/Prefeitura. Aviso |
---|
| O suporte não orienta em implementação. Este material é unicamente objeto de apoio, e orientamos firmemente que seja solicitado analista in - loco para implementar a ferramenta e homologar o uso em produção. A implementação deve ser realizada primeiramente em ambiente de homologação padrão atualizado e, posteriormente em Produção respeitando os devidos backups preventivos. |
Material de Apoio para Implementar o JOB: NFE0002_JOB_para_Cancelamento_de NFe_e/ou_NFSe_(JOB FatJobNFe) Deck of Cards |
---|
startHidden | false |
---|
effectDuration | 0.5 |
---|
id | FATJOB |
---|
effectType | horizontal |
---|
loopCards | true |
---|
| Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Configurações Gerais |
---|
| Para ativar o Job, caso possua apenas uma empresa e uma filial; 1° Configure o parâmetro MV_CANCNFE ou MV_CANNFSE ( para notas de serviços) = .T. Parâmetro | Configuração |
---|
MV_CANCNFE | .T. para habilitar o FatJobNFe (Quando .F. permite a exclusão sem utilizar o JOB) | MV_CANNFSE | Utilizado para notas de serviços: .T. para habilitar o FatJobNFe (Quando .F. permite a exclusão sem utilizar o JOB) | MV_INFXJUS | S caso deseje informar manualmente o motivo do cancelamento no momento da exclusão (necessário que a justificativa contenha mais de 15 dígitos) |
2° Configure o Job no appeserver.ini do Protheus para a execução do processo de cancelamento que foram emitidos por NFe ou NFSe. Aviso |
---|
| São as mesmas tags para nota de serviço, o que diferencia é o parâmetro MV_CANNFSE que deve estar habilitado. Verifique se a prefeitura dispõe de serviço de cancelamento. Caso contrario, indiferente do configurado no parâmetro de sistema MV_CANNFSE não irá existir a transmissão para o cancelamento. O fonte UpdFATNFE.PRX somente era necessário para o uso da versão 11, a partir da versão 12, não é mais necessário bastando apenas efetuar a configuração do ambiente. |
Dica |
---|
| - O Job é registrado no INI do Server Protheus e não no INI do TSS
- Caso possua um ambiente com balanceamento de cargas, ou seja, APPSERVER Master e Slaves (Balanceamento de carga) é necessário registrar o JOB no INI de cada serviço, e não no Master.
|
Abra o arquivo INI do Server Protheus e adicione a seção [FatJobNFe_<EMPRESA><FILIAL>] conforme o exemplo abaixo: Bloco de código |
---|
| [ONSTART]
JOBS=FatJobNFe_<empresa><filial>
[FatJobNFe_<empresa><filial>]
MAIN=FatJobNFe
ENVIRONMENT=<ambiente de trabalho>
nParms=2
parm1=<Empresa>
parm2=<Filial>
START_TIME=00:00:01
FINISH_TIME=23:59:59
INTERVAL=5
ACTIVATE=ON |
Observações sobre as chaves: Chave | Detalhamento | ENVIRONMENT | Ambiente de trabalho ao qual o Job pertence. | nParms | Deve permanecer 2. | parm1 | Código da empresa. | parm2 | Código da filial. | START_TIME | Horário inicial que deve ser considerado para a execução. | FINISH_TIME | Horário final que deve ser considerado para a execução. | INTERVAL | Intervalo de minutos entre as execuções (deve ser maior ou igual a 5). | ACTIVATE | Indica se está ativo. |
Aviso |
---|
| - Veja que na configuração os sinais de menor (<) e maior (>) devem ser substituídos pela informação:
Exemplo: FatJobNFe_<empresa><filial> => FatJobNFe_9901 (Empresa 99 e Filial 01) - Caso tenha mais de uma filial ou Gestão de empresas, além do parâmetro ativado, veja como deve ser configurado o JOB no appserver.ini. Siga as orientações do tópico ao lado: Configurações para mais de uma filial/ Gestão de empresas
|
|
Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Configurações para mais de uma filial/ Gestão de empresas |
---|
| Caso possua mais de uma filial para configurar o JOB, é necessário configurar uma seção do job para cada filial, exemplo:
Bloco de código |
---|
| [ONSTART]
JOBS=FatJobNFe_<empresa><filial>
[FatJobNFe_<empresa><filial>]
nParms=2
parm1=<Empresa>
PARM2=<Filial> [Exemplo: 01]
[ONSTART]
JOBS=FatJobNFe_<empresa><filial>
[FatJobNFe_<empresa><filial>]
nParms=2
parm1=<Empresa>
PARM2=<Filial> [Exemplo: 02] |
Aviso |
---|
| - Caso possua mais de um empresa para configuração, é necessário que efetue a configuração em cada empresa de forma separada, não há centralizadora por empresa.
- Caso possua ambiente com Gestão de empresa, é necessário registrar no INI uma sessão para cada Filial, onde os parâmetros devem receber por exemplo:
parm1=T1 (Grupo de empresa) parm2=D MG 01 (D=Empresa, MG=Unidade, 01=Filial)
|
|
Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Configuração via Schedule |
---|
| O Schedule Protheus permite que rotinas do sistema sejam agendadas para que possam ser executadas posteriormente, em um período determinado pelo usuário.
Deve-se configurar o schedule para a execução do processo de cancelamento (estorno dos documentos) que foram emitidos por NFe e NFSe: 1. No Configurador (SIGACFG), acesse Ambiente/ Schedule/ Schedule. 2. Dê um duplo clique em Agendamentos. 3. Clique em Cadastro. 4. Clique em Incluir. 5. Preencha os campos obrigatórios. 6. Preencha o campo Rotina (XX1_ROTINA) com FATJOBNFE(). 7. Clique OK. 8. Clique em Confirmar. Caso seja necessário executar o procedimento diversas vezes, configure por meio do botão Recorrência. Material sobre a configuração do Schedule : Schedule - Como agendar a execução de rotinas Aviso |
---|
| Recomendamos o uso do schedule, essa funcionalidade garante a exclusão das notas que estão em processamento para serem canceladas. Exemplo: Se excluiu uma nota, porem houve falha de comunicação com a Sefaz, e a nota ainda consta no sistema, o Schedule sempre reprocessa de forma automática e exclui assim que houver a comunicação com a Sefaz. Está funcionalidade é apenas para notas que estão com o status : Aguardando cancelamento, legenda laranja. Importante ressaltar que a configuração do Schedule tem o consumo de licenças. |
|
Card |
---|
default | true |
---|
id | FATJOBNFE |
---|
label | Processo |
---|
| - Emitir nota de Saída utilizando TES, Cliente e Produto que movimente as Tabelas SF3 e SFT e que esteja apta à ser Autorizada pelo SEFAZ (não retorne rejeição).
- Para transmitir: Rotina NFESEFAZ > Outras Ações > Transmissão
- Para Monitorar: Rotina NFESEFAZ > Outras Ações > Monitor > Faixa
- Para excluir: Acessar rotina MATA521A – Exclusão de Documento de Saída > Selecionar a nota > Outras Ações: Excluir.
- Rotina MATA521A – Exclusão de Documento de Saída > Outra ações: Refresh.
A funcionalidade Refresh tem a finalidade de reprocessar a comunicação com TSS para transmissão de cancelamento, e consequente exclusão, de Notas que, por algum motivo, não tiveram efetividade no retorno do Sefaz / Prefeitura no momento da primeira tentativa de exclusão. Ao ocorrer o reprocessamento através do Refresh, a Nota pode ser cancelada e excluída, ou ter seu status alterado indicando, por exemplo, uma rejeição. Obs: o botão refresh é destinado ao reprocessamento em lote de todas as notas (independente de apresentar em filtro de browser, ou de estar flegada). Caso não seja a intenção, deve-se selecionar a(s) Nota(s) desejada e realizar novamente a tentativa de exclusão para que a Nota em questão seja reprocessada. IMPORTANTE: É categoricamente recomendado o uso do Schedule, abordado nesta documentação. O schedule, quando devidamente configurado, terá o mesmo comportamento do "Refresh", reprocessando periodicamente as Notas, porém, de forma automática, evitando assim falha humana, visto que não depende de ação do usuário para reprocessar.
|
Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Processamento FATJOBNFE |
---|
| Comportamento Obtido com rotina MATA521: P11 igual ou superior a 15/02/17 / P12 igual ou superior a 14/02/17 ![](https://tdn.totvs.com/plugins/servlet/confluence/placeholder/error?i18nKey=editor.placeholder.broken.link&locale=pt_BR&version=2) ![](https://tdn.totvs.com/download/attachments/272154294/Comportamento_FATJOBNFE.jpg?version=1&modificationDate=1489597270000&api=v2)
(Clique aqui para visualizar / baixar o arquivo em Planilha) Dica |
---|
| O FATJOBNFE se baseia no conteúdo do campo F2_FIMP (Flag de impressão)para seu processamento; e, alimenta o campo F2_STATUS (status de Cancelamento da NFE) com o resultado da operação. A informação do cancelamento é gravado na tabela SPED050 do TSS nos seguintes campo: - memo XML_SIGCAN;
- Status
- Statuscanc
Veja nas tabelas abaixo os tipos de retorno desses campos. |
- Campo F2_STATUS – Status Canc. NFe (registrado apenas quando se faz uso do FATJOBNFE)
“ ” - Não houve tentativa de cancelamento com uso do FATJOBNFE 015 - Cancelamento Autorizado 025 - Cancelamento não transmitido (Aguardando retorno do SEFAZ) 026 - Cancelamento não autorizado 030 - Inutilização de numeração autorizada 036 - Cancelamento autorizado fora do prazo
- Campo STATUS Tabela SPED050 - Status da NFe:
1 = NFe Recebida. 2 = NFe Assinada. 3 = NFe com falha no schema XML. 4 = NFe transmitida. 5 = NFe com problemas. 6 = NFe autorizada. 7 = Cancelamento
- Campo STATUSCANC Tabela SPED050 - Status Cancelamento/inutilização ():
1 = NFe Recebida. 2 = NFe Cancelada. 3 = NFe com falha de cancelamento/inutilização.
Tabelas de Serviço/Prefeitura - Campo STATUS Tabela SPED051 - Status NFSE
STATUS= 1 "Nfse recebida pelo TSS"STATUS= 2 "Nfse assinada" STATUS= 3 "Nfse com erro de schema" STATUS= 4 "Nfse transmitida" STATUS= 5 "Nfse rejeitada" STATUS= 6 "Nfse autorizada" STATUS= 7 + STATUSCANC=2 "Nfse cancelada" Tabelas para transmissão do Totvs Colaboração Tabela CKO - Grava o Status do cancelamento/inutilizado Tabela CKA - Grava os Lotes X Nota Fiscal Eletrônica
Status da Sefaz: Definição dos Cenários (Detalhes, consultar Manual do contribuinte da SEFAZ no link: http://www.nfe.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=URCYvjVMIzI - Não assinada: TSS identifica falha no schema e não envia para o SEFAZ
Código TSS: 002 / 029
- Inutilizada: Numeração não existe para SEFAZ – Não poderá mais ser utilizada. Na necessidade de efetivar a operação, é necessário reemitir o Documento para transmitir com nova numeração.
Código Sefaz: 102 - Inutilização de número homologado Código TSS: 030
- Denegada: Existe algum problema geralmente do Emissor ou do Destinatário com o Fisco do SEFAZ (Ex: Situação cadastral) que impede o Faturamento. A numeração também não poderá mais ser utilizada.
Códigos SEFAZ: 110 – Uso denegado 301 - Uso Denegado: Irregularidade fiscal do emitente 302 - Rejeição: Irregularidade fiscal do destinatário 303 - Uso Denegado: Destinatário não habilitado a operar na UF 205 - NF-e está denegada na base de dados da SEFAZ Código TSS: 013
- Rejeitada: “N” motivos de erro no documento - Na necessidade de efetivar a operação, é necessário corrigir a causa da Rejeição e retransmitir.
Obs: Há correções, para as quais, se faz necessário também excluir o documento de saída e emitir novamente para que a correção seja efetiva, como por exemplo, problemas de cálculos de impostos, visto que os dados precisam ser corrigidos primeiramente nas tabelas do ERP para então enviar correto ao SEFAZ. Códigos SEFAZ: “N” retornos (consultar Manual do contribuinte da SEFAZ)
- Autorizada: Faturamento Homologado
Código SEFAZ: 100 - Autorizado o uso da NF-e Código TSS: 001
- Cancelamento autorizado:
Código SEFAZ: 101 - Cancelamento autorizado Código TSS: 015
Código SEFAZ: 155 - Cancelamento homologado fora de prazo (extemporâneo). Comumente acarreta cobrança ao Emissor. Código TSS: 036
- Cancelamento Rejeitado:
Códigos SEFAZ: 252 - Rejeição: Tipo do Ambiente difere do ambiente do Web Service 578 - Rejeição: A data do evento não pode ser maior que a data do processamento 577 - Rejeição: A data do evento não pode ser menor que a data de emissão da NF-e 579 - Rejeição: A data do evento não pode ser menor que a data de autorização para NF-e não emitida em contingência 220 - Rejeição: Prazo de Cancelamento Superior ao Previsto na Legislação 501 - Rejeição: Pedido de Cancelamento intempestivo (superior a 7 dias) 690 - Rejeição: Pedido de Cancelamento para NF-e com CT-e ou MDF-e Código TSS: 017 ou 026
|
Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Complemento |
---|
| - FATJOBNFE e MV_SPEDEXC
O processo de validação de exclusão via Job foi criado, pois apenas a configuração do parâmetro MV_SPEDEXC não atendia as reais necessidades do processo, já que em casos de rejeição da exclusão por parte do SEFAZ a nota já estaria excluída do sistema. O Job FatJobNFe foi desenvolvido com perspectiva a substituir a tratativa anterior; logo ao habilitar este processo, o sistema deixa de validar o parâmetro MV_SPEDEXC. Isso ocorre pois, se ambas validações estivessem ativas, o parâmetro iria barrar definitivamente exclusões de notas que por sua vez, poderiam ter o cancelamento aceito pelo órgão responsável. Não se deve barrar efetivamente a exclusão fora do prazo, pois existe possibilidade de tal operação (como em casos de cancelamento extemporâneo). Ou seja, o Job funciona como uma validação do comportamento Sefaz no ERP. Se o SEFAZ permite o cancelamento, o Job permite a exclusão.
- FATJOBNFE x TOTVS TRANSMITE
A configuração do FATJOBNFE não sofre alterações com a chegada do produto TOTVS Transmite , as validações do TSS para o uso do JOB são as mesmas utilizadas para validar no ERP. O TOTVS Transmite é um sistema on-line, integrado ao ERP Totvs, que facilita a administração dos documentos fiscais eletrônicos, a manifestação do destinatário e sua armazenagem com total segurança. Dúvidas relacionadas ao Totvs Transmite, contate nossa equipe SPED. Saiba mais: Integração TSS x TOTVS Transmite.
- Validar demais Regras antes de permitir a Exclusão da Nota
Caso deseje validar demais particularidades para permitir ou não a exclusão do documento de saída, deve-se utilizar Ponto de Entrada para determinar suas próprias condições / regras relevantes. P.E. sugerido: MS520VLD - http://tdn.totvs.com/display/public/PROT/MS520VLD Obs: Havendo necessidade de maiores informações ou suporte em relação a ponto de entrada, contatar suporte AdvPL do Protheus.
- SEFAZ (Secretaria de Estado da Fazenda) : é o órgão vinculado ao Ministério da Fazenda responsável pelo controle e padronização das regras relativas à receitas e despesas de cada Estado.
- TSS (TOTVS Service SOA): é a aplicação utilizada pelo Protheus para comunicação com o SEFAZ. Detalhes em: TSS0006_Manual_de_Configuração. O objetivo principal é prover os serviços de emissão e manutenção de documentos fiscais eletrônicos como: Nota Fiscal Eletrônica (NFe), Conhecimento de Transporte Eletrônico (CTe), Nota Fiscal de Serviço Eletrônica (NFSe), Capa de Lote eletrônica (Seu), Manifesto de Documentos Fiscais Eletrônicos (MDFe), Nota Fiscal Eletrônica para Consumidor Final (NFCe), Manifesto do destinatário (MDe).
- SPED (Sistema Público de Escrituração Digital): é a solução tecnológica da Receita Federal que oficializa a relação entre o Fisco e os contribuintes, por meio de arquivos digitais de escrituração fiscal e contábil, pelos sistemas empresariais dentro de um formato específico e padronizado.
- Códigos TSS (genéricos) e Códigos de retorno SEFAZ
Ao consultar a rotina NFESEFAZ > Outras Ações > Monitor > Faixa é exibido o conteúdo do TSS. Obs: Para Nota de Serviços (Prefeitura) rotina FISA022 > Outras Ações > Monitor. O retorno detalhado do SEFAZ pode ser consultado: No botão “Mensagens” dentro da rotina; ou, na Tabela SPED054; ou, no log _nfesbra_monitorfaixa_out gerado na pasta wslogxml de sua estrutura do servidor TSS. Obs: Para Notas de Serviços (Prefeitura) Tabela SPED055.
- O processo de validação da exclusão efetuado pelo FATJOBNFE não contempla o cancelamento ou a inutilização do CTe, sua finalidade é impedir a exclusão indevida da nota fiscal de saída que por ventura, possa conter o CTe associado a ela. Caso utilize o módulo TMS, contate a equipe para os procedimentos de cancelamento ou inutilização de Cte. Caso não utilize o módulo TMS, contate a equipe SPED para maiores orientações.
|
Card |
---|
default | true |
---|
id | FATJOB |
---|
label | Não encontrei a causa, como abrir o ticket |
---|
| Caso tenha checado a documentação e não tenha encontrado motivos do erro, por favor, abra um ticket para a Equipe Protheus Faturamento enviando por print:
- B) Campo F2_STATUS – Status Canc. NFe (registrado apenas quando se faz uso do FATJOBNFE)
“ ” - Não houve tentativa de cancelamento com uso do FATJOBNFE 015 - Cancelamento Autorizado, mas com pendencia de processo 025 - Cancelamento não transmitido (Aguardando retorno do SEFAZ) 026 - Cancelamento não autorizado 030 - Inutilização de numeração autorizada 036 - Cancelamento autorizado fora do prazo
- C) Campo STATUS Tabela SPED050 - Status da NFe:
1 = NFe Recebida. 2 = NFe Assinada. 3 = NFe com falha no schema XML. 4 = NFe transmitida. 5 = NFe com problemas. 6 = NFe autorizada. 7 = Cancelamento
- D) Campo STATUSCANC Tabela SPED050 - Status Cancelamento/inutilização:
1 = NFe Recebida. 2 = NFe Cancelada. 3 = NFe com falha de cancelamento/inutilização.
Tabelas de Serviço/Prefeitura
- E) Campo STATUS Tabela SPED051 - Status NFSE
STATUS= 1 "Nfse recebida pelo TSS STATUS= 2 "Nfse assinada" STATUS= 3 "Nfse com erro de schema" STATUS= 4 "Nfse transmitida" STATUS= 5 "Nfse rejeitada" STATUS= 6 "Nfse autorizada" STATUS= 7 + STATUSCANC=2 "Nfse cancelada" STATUS= 7 + STATUSCANC=3 "Tentativa"
|
|
| Pode lhe interessar: | |