Ir para conteúdo
  • Cadastre-se

dev botao

Leitura/importação de xml


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 1072 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Boa tarde,

eu estou começando agora a usar o ACBrLib e estou tentando ler um xml, para importar para meu banco. Eu já usava antes o ACBrNFe para o Delphi e lá eu conseguia carregar um xml no componente, ler seus dados e importar para dentro do meu banco.

Na demo que vem do ACBrLib, ele vem somente até a parte de  ACBrNFe.CarregarXML(arquivoIni), o que não produz nenhum efeito aparente. Pesquisando um pouco mais eu descobri que se eu chamar  var teste = ACBrNFe.ObterXml(0), eu consigo visualizar o conteúdo do xml.

O que eu preciso agora é saber como carregar esse conteúdo no componente, para que eu possa lê-lo.

 

Desde já agraço

 

Atenciosamente

 

Társis Francke Ferreira

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Társis,

Porque você esta usando o ACBrLibNFe, não esta mais usando o Delphi para desenvolver as suas aplicações?

Lembre-se que o ACBrLib é para quem não trabalha com o Delphi ou Lazarus.

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

  • Moderadores

Não ache que encurta o caminho só porque é DLL , pelo contrário tu vai ter que depender de versão , de dll´s dependentes e outras coisas que se torna pior a manutenção.

se usa os componentes, sugiro a focar usar ele e continuar

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia!

Obrigado pelas respostas,

mas a questão é justamente que estou desenvolvendo para web com C# agora e vou precisar enviar/ler/importar as notas via API. Por isso que preciso saber como fazer isso com o ACBrLib. Alguma sugestão de como trabalhar com ele, sem uma drástica mudança?

 

Atenciosamente

 

Társis Francke Ferreira

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Certo mas me diz uma coisa, sua expertise é Delphi ou C#?

se for delphi constroi uma API com DMVC ou Horse e o ACBr e consome dai na Web e tu vai ter um ecosistema armonizado. usa Docker, Kubernets, Redis, RabbitMQ e NGINX

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Isso não vai ser viável, porque toda a interface está sendo criada em C# (via blazor) e todos os outros microserviços/api's também estão sendo criados em C#.

Por isso eu preciso usar o ACBrLib mesmo (ao menos até onde eu entendi). Nos vídeos de apresentação parece que mais pessoas já estariam usando e, segundo diziam, a migração de quem usava o Monitor iria ser praticamente transparente.

Eu só preciso de um exemplo de como ler/carregar um xml para poder extrair os valores, para interagir/gravar no meu banco.

Ah, complementando, eu não usava o monitor, trabalhava direto com os componentes mesmo.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Obrigado Juliomar,

mas será que ninguém na comunidade está usando a biblioteca em C# já fez alguma rotina de importar/ler o XML? Eu li os arquivos de help e já consegui extrair um arquivo .ini da leitura do XML. Mas como é que estão fazendo para extrair os valores? Estão lendo o .ini "na unha"? Não existe uma função que "desserialize" o arquivo para uma classe?

 

Obrigado pela atenção!

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Bom dia,

se entendi você precisa do XML gerado pela lib para gravar na sua base de dados, se for isso pode utilizar o  método ObterXML https://acbr.sourceforge.io/ACBrLib/NFE_ObterXml.html vai ter na resposta o XML completo e bastaria converter para bse64 para gravar. E para o processo inverso de carregar na biblioteca novamente utiliza o método https://acbr.sourceforge.io/ACBrLib/NFE_CarregarXML.html passando também o conteúdo do XML.

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Creio que a classe em C# da ACBrLib não tenha o mesmo recurso que o componente em Delphi, de mapear o XML em Propriedades do Objeto NFe...

Se não me engano você conseguiria na ACBrLib carregar o XML e convertê-lo para INI no formato do ACBr.... mas isso não ajuda muito...

Acho que você precisará usar classe do C# para ler o XML e varrer no "DOM" as propriedades que você deseja...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Obrigado pelas respostas! O Daniel matou a charada. É justamente isso que eu preciso. Então, se não houver mesmo essa funcionalidade, teria de ler na unha o xml ou o ini gerado para poder extrair as informações.

Mas pode ser que alguém já tenha tido essa necessidade (a não ser que não tenha ninguém usando ainda com C# essa funcionalidade).

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1072 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.