Protected Sub ButtonArchivos_Click(ByVal sender As Object, ByVal e As EventArgs) Handles ButtonArchivos.Click
Dim filepath As String = Server.MapPath("\Upload")
Dim uploadedFiles As HttpFileCollection = Request.Files
Span1.Text = String.Empty
For i As Integer = 0 To uploadedFiles.Count - 1
Dim userPostedFile As HttpPostedFile = uploadedFiles(i)
'Try
If userPostedFile.ContentLength > 0 Then
Span1.Text += "<u>File #" & (i + 1) & "</u><br>"
Span1.Text += "File Content Type: " & userPostedFile.ContentType & "<br>"
Span1.Text += "File Size: " & userPostedFile.ContentLength & "kb<br>"
Span1.Text += "File Name: " & userPostedFile.FileName & "<br>"
userPostedFile.SaveAs(filepath & "\" & Path.GetFileName(userPostedFile.FileName))
Span1.Text += "Location where saved: " & filepath & "\" & Path.GetFileName(userPostedFile.FileName) & "<p>"
Dim Daniela As String = filepath & "\" & Path.GetFileName(userPostedFile.FileName)
Dim Version_xml As String
Dim implocaltraladados As Decimal
Dim implocalretenidos As Decimal
Dim retenidos As Decimal
Dim trasladados As Decimal
Dim Subtotal As Decimal
Dim valor_noIdentificacion As String
Dim preciounitarioxml As Decimal
Dim importeconcepto As Decimal
Dim cantidadvendida As Decimal
Dim subtotalclave As Decimal = 0
Dim descripcionxml As String
Dim Emisor_Nombre As String
Dim total As Decimal
Dim Fecha As Date
Dim UUID As String
Dim Importe As String
Dim Cantidad As Decimal
Dim MercanciasNoIdentificacion As String
Dim ComercioExterior As Decimal
Dim Noidentificacion As String
Dim VarConceptos As XmlNodeList
Dim ValorDolares As String
Dim ValorUnitarioAduana As Decimal
Dim CantidadAduana As Decimal
Dim VarDocumentoXML As XmlDocument = New XmlDocument()
Dim VarManager As XmlNamespaceManager = New XmlNamespaceManager(VarDocumentoXML.NameTable)
VarDocumentoXML.Load(Daniela)
'VarDocumentoXML.Load("c:\prueba.xml") 'Aqui puedes definir la ruta del archivo mediante un OpenFileDialog o algun otro metodo para especificar la ubicacion del XML
VarManager.AddNamespace("cfdi", "http://www.sat.gob.mx/cfd/3")
VarManager.AddNamespace("cce11", "http://www.sat.gob.mx/ComercioExterior11")
VarManager.AddNamespace("tfd", "http://www.sat.gob.mx/TimbreFiscalDigital")
VarManager.AddNamespace("implocal", "http://www.sat.gob.mx/implocal")
Version_xml = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/@Version", VarManager).InnerText
If Version_xml = "3.3" Then
Subtotal = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/@SubTotal", VarManager).InnerText
Fecha = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/@Fecha", VarManager).InnerText
Noidentificacion = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/@NoIdentificacion", VarManager).InnerText
Importe = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/@Importe", VarManager).InnerText
Cantidad = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/@Cantidad", VarManager).InnerText
MercanciasNoIdentificacion = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/cce11:ComercioExterior/cce11:Mercancias/cce11:Mercancia/@NoIdentificacion", VarManager).InnerText
ValorDolares = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/cce11:ComercioExterior/cce11:Mercancias/cce11:Mercancia/@ValorDolares", VarManager).InnerText
ValorUnitarioAduana = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/cce11:ComercioExterior/cce11:Mercancias/cce11:Mercancia/@ValorUnitarioAduana", VarManager).InnerText
CantidadAduana = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/cce11:ComercioExterior/cce11:Mercancias/cce11:Mercancia/@CantidadAduana", VarManager).InnerText
Emisor_Nombre = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Emisor/@Nombre", VarManager).InnerText
ComercioExterior = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/cce11:ComercioExterior/@Version", VarManager).InnerText
UUID = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/tfd:TimbreFiscalDigital/@UUID", VarManager).InnerText
Label8.Text = Emisor_Nombre
Label9.Text = ComercioExterior
Label10.Text = Subtotal.ToString("c")
' implocalretenidos = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/implocal:ImpuestosLocales/@TotaldeRetenciones", VarManager).InnerText
'implocaltraladados = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Complemento/implocal:ImpuestosLocales/@TotaldeTraslados", VarManager).InnerText
'retenidos = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Impuestos/@TotalImpuestosRetenidos", VarManager).InnerText
' trasladados = VarDocumentoXML.SelectSingleNode("/cfdi:Comprobante/cfdi:Impuestos/@TotalImpuestosTrasladados", VarManager).InnerText
VarConceptos = VarDocumentoXML.SelectNodes("/cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto", VarManager)
For Each node In VarConceptos
valor_noIdentificacion = node.attributes("NoIdentificacion").value
preciounitarioxml = node.attributes("ValorUnitario").value
importeconcepto = node.attributes("Importe").value
cantidadvendida = node.attributes("Cantidad").value
subtotalclave = node.attributes("Importe").value
descripcionxml = node.attributes("Descripcion").value
Next
Else
MsgBox("Archivo XML no es una factura version 3.3")
End If
'For a As Integer = 0 To uploadedFiles.Count - 1
Dim dt As New DataTable()
'columnas
dt.Columns.Add("Subtotal")
dt.Columns.Add("Fecha")
dt.Columns.Add("Noidentificacion")
dt.Columns.Add("Importe")
'Agregar Datos
Dim row As DataRow = dt.NewRow()
row("Subtotal") = Subtotal
row("Fecha") = Fecha
row("Noidentificacion") = Noidentificacion
row("Importe") = Importe
dt.Rows.Add(row)
'enlazas datatable a griedview
GridTrafico1.DataSource = dt
GridTrafico1.DataBind()
Me.MultiView1.ActiveViewIndex = 1
Me.lbl_indicador.Text = 2
'Next
Else
Me.GridTrafico1.DataSource = Nothing
Me.GridTrafico1.DataBind()
End If
'Catch Ex As Exception
' Span1.Text += "Error: <br>" & Ex.Message
'End Try
Next
End Sub