Alteração de parâmetro no Windows

A partir das versões 5.8.7.56 e 5.8.8.24 do Gestão Empresarial | ERP e a versão 5.8.8.22 do eDocs, o ID das NFS-es, gerado nas tags <LoteRps> e <InfRps> é iniciado pelo valor ID.

Esta alteração foi realizada, pois após a atualização dos métodos de segurança do .NET Framework, ao emitir uma NFS-e, ela permanecia com o status de Validada ou Falha no eDocs e no log era gerado o seguinte registro: ERROR Senior.SapiensNfe.Processos.Service.Nfse.<Método_Utilizado_dependendo_do_Fornecedor> - Erro em EnviarLoteRpsEnvio System.Security.Cryptography.CryptographicException: Elemento Reference mal formado.

Observação

A mensagem de erro poderá variar de acordo com o ambiente onde o sistema estiver instalado, sendo, por exemplo, apresentada em inglês.

Se mesmo após a atualização dessas versões a validação do ID não funcione, é necessário adicionar uma chave no registro do Windows, desativando a validação do ID por parte do .NET. Abaixo segue o passo-a-passo para efetuar este procedimento, de acordo com a versão do .Net utilizada:

Se a versão do .Net instalada e do Windows for 32bits:

  1. Execute o aplicativo Regedit.exe do Windows com usuário Administrador do sistema no servidor onde o serviço do DE está instalado;
  1. Localize a chave HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft >.NETFramework > Security;
  1. Clique com o botão direito do mouse no registro Security, selecione a opção Novo e Valor DWORD (32Bits);
  1. Insira um novo valor com o nome SignedXmlRequireNCNameIdentifier;
  1. Clique com o botão direito do mouse no registro criado e selecione a opção Modificar;
  1. Na tela Editar Valor DWORD (32 bits), informe no campo Dados do valor o valor 0 e o campo Base deverá ficar definido como Hexadecimal;
  1. Após ter sido inserido o valor no local indicado, é necessário reiniciar o serviço do DE e reprocessar eventuais registros que foram marcados como Falha.

 

Se a versão do .Net instalada e do Windows for 64bits:

  1. Execute o aplicativo Regedit.exe do Windows com usuário Administrador do sistema no servidor onde o serviço do DE está instalado;
  1. Localize a chave HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft >.NETFramework > Security;
  1. Clique com o botão direito do mouse no registro Security, selecione a opção Novo e Valor QWORD (64Bits);
  1. Insira um novo valor com o nome SignedXmlRequireNCNameIdentifier;
  1. Clique com o botão direito do mouse no registro criado e selecione a opção Modificar;
  1. Na tela Editar Valor QWORD (64 bits), informe no campo Dados do valor o valor 0 e o campo Base deverá ficar definido como Hexadecimal;
  1. Após ter sido inserido o valor no local indicado, é necessário reiniciar o serviço do DE e reprocessar eventuais registros que foram marcados como Falha.

 

Se a versão do .Net instalada for 32bits e a versão do Windows for 64Bits:

  1. Execute o aplicativo Regedit.exe do Windows com usuário Administrador do sistema no servidor onde o serviço do DE está instalado;
  1. Localize a chave HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Wow6432Node > .NETFramework > Security;
  1. Clique com o botão direito do mouse no registro Security, selecione a opção Novo e Valor DWORD (32Bits);
  1. Insira um novo valor com o nome SignedXmlRequireNCNameIdentifier;
  1. Clique com o botão direito do mouse no registro criado e selecione a opção Modificar;
  1. Na tela Editar Valor DWORD (32 bits), informe no campo Dados do valor o valor 0 e o campo Base deverá ficar definido como Hexadecimal;
  1. Após ter sido inserido o valor no local indicado, é necessário reiniciar o serviço do DE e reprocessar eventuais registros que foram marcados como Falha.

Este artigo ajudou você?