cancel
Showing results for 
Search instead for 
Did you mean: 

MDF-e com SP20 (GRC) - Número do MDF-e inválido

eduardo_abrell
Explorer
0 Kudos

Olá Galera, Boa Tarde!

Aplicamos o SP20 no GRC e agora estamos tendo o seguinte erro: "Erro de Validação: campo IS_MDFE_IDE-N_MDF: Número do MDF-e: Conteúdo inválido".

Já verificamos o range de numeração na SNUM no ERP e na tabela de header de MDF-e no GRC, os mesmos estão sincronizados.

Após aplicação do SP20, foi criada a função /XNFE/OUTMDFE_VALIDATION, identificamos que ao chamar o método "gs_regex-go_regex" é retornado um "Exception", então é preenchido a variável lv_error e o erro de validação é retornado ao ERP. (Segue anexo trecho da função).

Se limpar a variável lv_error, o documento MDF-e é aprovado pela SEFAZ e retornado ao ERP normalmente.

Pedi para revisarem os pré-requisitos da SAP Note: 2138917 - Support of the changes made by MOC 1.00a of MDF-e.

Enquanto isso gostaria de saber se alguém já teve este problema ou tem alguma ideia do que pode ser verificado?

Obrigado!

Eduardo Abrell Crocco

Accepted Solutions (1)

Accepted Solutions (1)

former_member182114
Active Contributor
0 Kudos

Bom dia Eduardo,

O código não deve ter erro pois é uma regra fixa de verificação de caracteres possíveis.

Então o problema pode estar no conteúdo do campo ou na regra de validação deste conteúdo.

Você debugou? Qual o conteúdo do campo (lv_input)?

Se não debugou qual o conteúdo do Número do MDF-e?

Ele deve ser compatível com o regex abaixo:

[1-9]{1}[0-9]{0,8}

Traduzindo... o primeiro dígito deve ser entre 1 e 9... E os demais entre 0 e 9 num total de oito dígitos... Confuso?

Atenciosamente, Fernando Da Rós

eduardo_abrell
Explorer
0 Kudos

Bom Dia Da Rós,

O número do MDF-e é : 000000111 (9 dígitos) e começando com 0.

É o primeiro dígito que está inválido, ou seja, deveria começar com 1, a quantidade de dígitos que deveria se 8 e não 9 dígitos ou os dois ?

Eu debuguei sim, se for necessário eu envio o conteúdo da estrutura, só precisarei aguardar a emissão de um outro MDF-e, porque os anteriores foi possível aprovar pulando a validação, para os usuários liberar os caminhões parados.

Segue o print com o número do MDF-e o erro:

Obrigado pela ajuda e pelo rápido retorno.

Att,

Eduardo Abrell Crocco

former_member182114
Active Contributor
0 Kudos

Bom dia Eduardo,

É isso mesmo. Dei uma olhada no manual e não encontrei nada pedindo para começar com 100000000 mas é a mesma regra descrita no XSD então se o validador não pegasse uma implementação de validação de esquema pegaria.

  <xs:simpleType name="TNF">

    <xs:annotation>

      <xs:documentation>Tipo Número do Documento Fiscal</xs:documentation>

    </xs:annotation>

    <xs:restriction base="xs:string">

      <xs:whiteSpace value="preserve" />

      <xs:pattern value="[1-9]{1}[0-9]{0,8}" />

    </xs:restriction>

  </xs:simpleType>

Neste momento diria para você seguir dois caminhos:

1) Abrir uma consulta na Sefaz sobre a necessidade deste pattern para o Número do Documento Fiscal.

2) Começar sua numeração a partir começando com 1... para seguir adiante

Atenciosamente, Fernando Da Rós

eduardo_abrell
Explorer
0 Kudos

Bom Dia Da Rós,

Vou seguir com a segunda opção, alterar o range de numeração para começar com 100000000.

Assim que for emitido um novo MDF-e, informo o resultado.

Valeu!

Atenciosamente,

Eduardo Abrell Crocco

Answers (1)

Answers (1)

eduardo_abrell
Explorer
0 Kudos

Bom Dia Da Rós.

Infelizmente o cliente não quis alterar o range de numeração, que seria a solução mais correta neste caso, a justificativa foi que precisariam alterar o range de numeração de aproximadamente 40 filiais.

Como a Sefaz está aprovando os documentos normalmente, optaram por deixar a solução paliativa atual e abrir um chamado na Sap para ter uma resposta formal sobre o assunto.

A solução paliativa foi remover o registro N_MDF da tabela /XNFE/XMLVALID.

Outra opção seria criar um enhancement point dentro da função /XNFE/OUTMDFE_VALIDATION para pular a validação.

De qualquer forma, sua ajuda foi de grande valor.

Muito Obrigado!

Atenciosamente,

Eduardo Abrell Crocco

former_member182114
Active Contributor
0 Kudos

Bom dia Eduardo,

Obrigado pelo feedback, isto expõe que a regra descrita no XSD realmente não faz sentido e já foi removida internamente (se algum dia chegou a ser implementada).

Atenciosamente, Fernando Da Rós