Definição da Regra de Negócio
Antecedentes
O processo da Pré-Nota Fiscalpermite ao usuário carregar Cupons Fiscais (XML) emitidos pelos fornecedores para geração através da opção "+ Upload XML". Também permite a Alteração, Visualização e Exclusão dos registos correspondentes à carga dos Cupons Fiscais.
O processo está dividido em Carregar XML e Manutenção dos registos, que serão descritos a seguir:
Upload XML:
A opção Upload XML é o processo que permite carregar as notas fiscais eletrônicas (XML) dos fornecedores; que obtém os valores para validar a informação e, assim, carregar no Protheus.
Ao carregar o XML, o sistema executa validações para garantir o carregamento correto da informação, que, se não funcionarem, iram devolver a seguinte mensagem de validação:
Validações de configuração:
Seq. | Validações a efetuar | Descrição da mensagem de erro |
---|---|---|
1 | A existência do arquivo XML a carregar. | "O arquivo ou a localização do arquivo a carregar não existe" |
2 | A existência do diretório onde o arquivo já processado é incluído. | “Diretório “+MV_XMLPRO+” onde será depositado o arquivo processado não existe” |
3 | Confira se a RFC existe no catálogo de fornecedores (Tabela SA1). | "RFC inexistente no catálogo de fornecedores" |
4 | A existência do diretório onde as faturas são obtidas em xml. | “Diretório “+MV_DIRXML+ “onde estão localizadas as notas fiscais XML não existe.” |
Validações em XML:
Validações a efetuar | Mensagem de erro |
Confira que a RFC do emissor não está vazia | “"O RFC não foi informado na nota fiscal.” |
Valide que o RFC da empresa(SM0->M0_CGC) corresponde com o RFC do destinatário incluído na nota fiscal. | "O RCF do destinatário informado na nota fiscal não corresponde com o registrado para a empresa:" + SM0->M0_CGC |
Valide que o RFC do destinatário está incluída na nota fiscal. | "O RCF do destinatário não foi informado na nota fiscal." |
Deve ter a data do carimbo | “Nota Fiscal sem data de carimbo.” |
Valide que a nota fiscal contém o fólio fiscal. O arquivo XML deve conter valores no nodo UUID. | “Sem Fólio fiscal (UUID)” |
NOTA:
Para saber mais sobre como usar funções para o tratamento dos arquivos XML com ADVPL, consulte no TDN:
Validações de tabelas:
Validações a efetuar | Mensagem de erro |
Valide que os campos (SX3->X3_CAMPO) para o CPP/CPQ OBRIGATÓRIOS estão definidos como obrigatórios na configuração da addenda (CPO_OBLIGA). | Para cada campo inexistente, envie a mensagem: "Configuração de Addenda errada para o campo: “+x3_titulo do CPO_CAMPO |
Validações a efetuar | Mensagem de erro |
Valide que os campos (CPO_CAMPO), da addenda selecionada, existem os seus elementos no arquivo (CPO_ELEMEN). | Para cada campo inexistente, envie a mensagem: "A nota fiscal não contém “+x3_titulo do CPO_CAMPO |
NOTA:
As Validações em XML e Validações de tabelas; irão gerar um log de erros no caso de não excederem as validações, que serão exibidas no final do processo de carregamento de XML.
Para a rotina da Pré-Nota Fiscal ( MATA458) com uma data maior ou igual a 21/06/2024, o Ponto de Entrada PEVLD458, Que é detonado na função que executa o processo XML (XMLProc) pela ação Upload XML, Permitir que o utilizador adicione validações personalizadas ao gerar uma Pré-nota a partir de um XML.
O ponto de entrada PEVLD458 recebe como parâmetro a estrutura com os dados XML.
Para mais informações, veja o exemplo na secção Ponto de Entrada.
Produto de XML associado ao Fornecedor.
Para a rotina Pré-Nota Fiscal ( MATA458) com uma data igual ou superior a 05/07/2024, em que não está configurado nenhum anexo, a pesquisa de produtos é realizada na tabela SA5 - Associação Produto x Fornecedor com o código do produto informado no atributo cfdi:Concepto:NoIdentificacion do XML.
Se o produto e o fornecedor de XML não estiverem associados à rotina Produtos x Fornecedor (MATA061), será exibida a seguinte mensagem:
Manutenção:
Procedimento
Upload XML:
- Acessar o módulo Compras (SIGACOM).
- Acessar à rotina Pré-Nota Fiscal, localizada em "Atualizações | Importação de notas fiscais | Pré-Nota Fiscal".
- Clique em Upload XML.
- Pressionar o botão "Parâmetros" e informe:
- Rota e nome do arquivo XML.
- Validar que a pré-nota fiscal foi criada com sucesso.
- Se o produto encontrado no XML não estiver associado ao fornecedor na tabela SA5-Associação Produto x Fornecedor, será exibida a seguinte mensagem:
- Efetuar o preenchimento dos campos obrigatórios para a geração da Nota fiscal.
Manutenção de registros:
- Acessar o módulo Compras (SIGACOM).
- Digite a rotina Gerar Notas Fiscais, localizada em "Atualizações | Importação de notas fiscais | Gerar Notas Fiscais".
- Clique em Upload XML.
Ponto de Entrada
Exemplo do Ponto de Entrada:
PEVLD458
User Function PEVLD458()
Local oXMLP := PARAMIXB[1] //Objeto do XML
Local aErrRet := {}
aAdd(aErrRet, "Erro Customizado em Ponto de Entrada")
Return aErrRet
Tabelas utilizadas
- SA2 - Clientes.
- SB1 - Produtos.
- CPP - Pré-nota fiscal.
- CPQ - Detalhes da Pré-nota fiscal.
- SE4 - Condição de pagamento.
- SF4 - Tipo de Entrada/Saída.
- SF1 - Cabeaçalho de Notas Fiscal de Entrada.
- SD1 - Ítens de Notas Fiscais de Entrada.