Ir para conteúdo
  • Cadastre-se

dev botao

ACBrNFSeX - Mudança nas propriedades sobre XML no componente


  • Este tópico foi criado há 813 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Consultores

EDIT: As alterações abaixo já se encontram no SVN desde o dia 23/02/2022.

 

Olá Pessoal,

   Como sempre queremos facilitar pra vocês ao máximo o uso de nossos componentes e a manutenção de seu código.

    Happy Very Funny GIF by Disney Zootopia

   Sendo assim, achamos apropriado fazer algumas alterações no componente ACBrNFSeX. O componente antigo, ACBrNFSe, não será alterado visto que não estamos fazendo melhorias nele, apenas manutenção de erros e falhas. Para saber mais sobre como migrar do ACBrNFSe para o ACBrNFSeX, veja esse link.

   Vamos detalhar abaixo as mudanças e as motivações.

   Anteriormente, no componente tínhamos as seguintes propriedades: XML, XMLOriginal, XMLAssinado e XMLNFSe.

   Essas propriedades foram criadas seguindo o modelo do componente antigo e podiam ser lidas através da lista de notas, como por exemplo no código:

Citar

"ACBrNFSeX1.NotasFiscais.Items[i].XML"

   Elas tinham a seguinte função no componente antigo:

  •  XML: o XML da NFS-e retornado pelo WebService;
  •  XMLNFSe: o XML da NFS-e retornado pelo WebService;
  • XMLOriginal: o XML do RPS sem assinatura;
  • XMLAssinado: o XML do RPS (que pode estar assinado ou não dependendo do provedor);

   Agora pense um pouco sobre o que viu. Temos duas propriedades que contem o XML da NFS-e e duas que contem o XML do RPS.

   Não temos necessidade dessa redundância, principalmente porque o componente novo, ACBRNFSeX, está muito mais funcional na questão de separação de comportamento dos provedores.

   Sendo assim, as propriedades XMLAssinado e XMLNFSe acabaram ficando sem utilidade. Estávamos na situação de que ao tentar ler as mesmas é retornado uma string vazia.

   Já na propriedade XMLOriginal era retornado o XML do Rps (assinado ou não conforme o provedor).

   Por firm, na propriedade XML era retornado o XML da NFS-e.

Estamos fazendo as seguintes alterações no ACBrNFSeX:

  1. As propriedades XMLAssinado e XMLNFSe foram removidas. Elas não continham nenhuma informação.
  2. A propriedade XML foi renomeada para XmlNfse, deixando mais claro o objetivo.
  3. A propriedade XMLOriginal foi renomeada para XmlRps, dando mais clareza ao que ela contêm.

Assim ao invés de 4 propriedades com nomes talvez confusos e dados redundantes, agora temos 2 funcionais.

Para aqueles que desejam guardar o XML do Rps e ou da NFS-e no banco de dados basta ler as propriedades mencionadas acima podem usar um código semelhante ao abaixo

XMLReciboRPS := ACBrNFSeX1.NotasFiscais.Items[ i ].XmlRps;

XMLNotaServico := ACBrNFSeX1.NotasFiscais.Items[ i ].XmlNfse;

Onde "i" é o índice da nota na lista, que pode variar de zero até a quantidade de documentos menos 1.

Observações:

Se o valor da propriedade de configuração: 

  • Configuracoes.Arquivos.Salvar for True os valores de XmlRps e XmlNfse serão salvos em disco;
  • O conteúdo de XmlRps será salvo na pasta Recibos e o de XmlNfse na pasta Notas;
  • Curtir 4
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • EMBarbosa changed the title to ACBrNFSeX - Mudança nas propriedades sobre XML no componente
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.