Lendo XML da NFe [com Delphi]

UPDATE: Adicionei no meu Github um exemplo com fontes. O endereço é este aqui: https://github.com/simasware/acbrNFeExemplo

Vejo que um dos posts mais visitados do blog é sobre leitura de XML com o Delphi. E como a maioria das pesquisas vem como ‘ler xml nfe’ etc, resolvi fazer um post sobre isto!

Para tal, utilizarei a biblioteca ACBr (uma excelente suíte de componentes para automação comercial). Não detalharei sobre a instalação do componente etc (você pode ver aqui: http://acbr.sourceforge.net/drupal/?q=node/20).

Carregando o XML

Na paleta de componentes do ACBr, existe o componente ACBrNFe, adicione ao formulário. Abaixo o trecho de código para carregar o arquivo.

//...
if OpenDialog1.execute then
Acbrnfe1.loadFromFile(OpenDialog1.fileName);
//...

A cada LoadFromFile que é feito no componente, é adicionado um item numa lista de NFe, ou seja, o componente ACBrNFe armazena as notas carregadas num TCollection. Para acessar os dados, você pode fazer da seguinte maneira:

//exibo o modelo da NFe num messageBox
showMessage(Acbrnfe1.NotasFiscais.Items[0].NFe.Ide.modelo);

//...

Na documentação do ACBr, você pode encontrar detalhadamente os métodos/propriedades para retornar os dados desejados.

Espero que tenha ajudado.

Até a próxima 😉

Conheça o Fuduntu, uma distro pra quem sente saudades do Gnome 2.

[UPDATE: Infelizmente essa distro foi descontinuada 😦 ]

Quem é que não sente saudades do bom e velho Gnome 2? Pois, é! Na era do Gnome Shell e Unity, muitos fãs do Ubuntu (eu sou um deles) que sentem falta da rapidez e simplicidade do Gnome 2 podem parar de chorar, conheçam o Fuduntu!

O Fuduntu é uma distro focada na rapidez e estética agradável ao usuário. De suas características, as principais são:

  • Rolling release ;
  • Codecs multimídia já inclusos na ISO;
  • Suporta Steam e Netflix;
  • Provê um tempo de duração maior da bateria em notebooks.

O Fuduntu já vem com os seguintes softwares pré-instalados:

  • Chromium;
  • LibreOffice;
  • Thunderbird;
  • Gimp;
  • VLC.

image00 image01 image03

Além destas características, o Fuduntu utiliza como padrão o gerenciador de pacotes YUM (padrão no Fedora / Red Hat).

Baixe em: http://www.fuduntu.org
Testem, vale a pena!

Fontes: http://www.fuduntu.org