IMPORTAR ARQUIVO XML NF-E

MOREIRA 20/04/2017 09:51:42
#473426
Amigos, bom dia,
tentei fazer como no vídeo do amigo KERPLUNK, pelo visto muito prático

mas não conseguir gerar a classe no vb.net.

sei que é chato ficar perturbando, mas esse forum foi feito pra isso...


JOHNSTEVE 20/04/2017 13:30:09
#473437
Citação:

:
John, neste exemplo que vc postou fica bem simples, pegando os campos específicos, mas como ficaria para pegar os produtos e seus respectivos impostos?. acho que essa é a duvida da maioria....



Citação:

:
:
John, neste exemplo que vc postou fica bem simples, pegando os campos específicos, mas como ficaria para pegar os produtos e seus respectivos impostos?. acho que essa é a duvida da maioria....

Boa pergunta. Futura !!!



Citação:

:
:
John, neste exemplo que vc postou fica bem simples, pegando os campos específicos, mas como ficaria para pegar os produtos e seus respectivos impostos?. acho que essa é a duvida da maioria....
Os produtos, são nada mais nada menos que ítens da nota. Navegue pelo objeto(usando o Object Browser) e vai ver os produtos lá.



Boa tarde amigos, é bem simples como o Kerplunk falou...
o exemplo abaixo do amigo brother [txt-color=#e80000] NILSONTRES [/txt-color] sitou. eu faço dessa mesma forma que ele passou no exemplo acima.
hoje atualmente tenho muitos clientes que utilizam a importação do XML da NFe. e nenhum deles não tive problema algum. eu leio todas as informações das tags do XML.

  [ô]**DADOS DOS PRODUTOS
Dim AddGrid As Integer
For AddGrid = 0 To nota.NFe.infNFe.det.Count - 1
Dim V_vProd As Double = Format(CType(Replace(nota.NFe.infNFe.det(AddGrid).prod.vProd, [Ô].[Ô], [Ô],[Ô]), Double))
dgv_Produtos_NotaFiscal.Rows.Add()

dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(0).Value = nota.NFe.infNFe.det(AddGrid).prod.cProd
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(1).Value = nota.NFe.infNFe.det(AddGrid).prod.xProd.ToUpper
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(2).Value = nota.NFe.infNFe.det(AddGrid).prod.NCM
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(4).Value = nota.NFe.infNFe.det(AddGrid).prod.CFOP
If Not nota.NFe.infNFe.det(AddGrid).prod.vOutro Is Nothing Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(20).Value = Replace(nota.NFe.infNFe.det(AddGrid).prod.vOutro, [Ô].[Ô], [Ô],[Ô])
Else
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(20).Value = [Ô]0,00[Ô]
End If
If Not nota.NFe.infNFe.det(AddGrid).prod.vFrete Is Nothing Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells([Ô]ValorFrete[Ô]).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.vFrete).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
Else
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells([Ô]ValorFrete[Ô]).Value = [Ô]0,00[Ô]
End If
If Not nota.NFe.infNFe.det(AddGrid).prod.vSeg Is Nothing Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells([Ô]vlr_seguro[Ô]).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.vSeg).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
Else
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells([Ô]vlr_seguro[Ô]).Value = [Ô]0,00[Ô]
End If

Try
CEST_ = nota.NFe.infNFe.det(AddGrid).prod.CEST
Catch ex As Exception
CEST_ = Nothing
End Try
If CEST_ <> [Ô][Ô] Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(5).Value = CEST_
End If
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(6).Value = nota.NFe.infNFe.det(AddGrid).prod.uCom
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(7).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.qCom).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(8).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.vUnCom).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(9).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.vProd).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(22).Value = nota.NFe.infNFe.det(AddGrid).prod.cEAN

Try
[ô]
vDesc_ = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).prod.vDesc).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2)
Catch ex As Exception
vDesc_ = Nothing
End Try
If vDesc_ <> [Ô][Ô] Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(18).Value = vDesc_
Else
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(18).Value = [Ô]0,00[Ô]
End If
[ô]************************************************************************************************************************************
Página 2 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas