Imagen

DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.


CARTA PORTE V3.1

ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03


.

Archivo XML (CFDI) en Visual Basic 2010 (.NET 4).

Para quienes programan Visual Basic aqui esta la solucion
[[ FORO CERRADO DEBIDO A QUE YA LA INFORMACION YA NO ES VIGENTE ]]
Cerrado
pimelsoft
Mensajes: 6
Registrado: Mié Ene 18, 2012 8:30 pm

Archivo XML (CFDI) en Visual Basic 2010 (.NET 4).

Mensaje por pimelsoft »

Creación de un Archivo XML (CFDI) con Visual Basic 2010 (.NET 4). Con prefijos y NameSpace automáticos.

Using ArchivoXML As XmlWriter = XmlWriter.Create("CFDIdePrueba.XML")
Dim Prefijo As String = "cfdi", EspacioDeNombre As String = "http://www.sat.gob.mx/cfd/3"

With ArchivoXML
.WriteStartElement(prefix:=Prefijo, localName:="Comprobante", ns:=EspacioDeNombre)

.WriteAttributeString(prefix:="xsi", localName:="schemaLocation", ns:="http://www.w3.org/2001/XMLSchema-instance", value:="http://www.sat.gob.mx/cfd/3 cfdv3.xsd")
.WriteAttributeString("version", "3.0")
.WriteAttributeString("folio", "000001")
.WriteAttributeString("fecha", DateAndTime.Now.ToString("s"))
.WriteAttributeString("sello", "Sello Digital Aquí")
.WriteAttributeString("formaDePago", "PAGO EN UNA SOLA EXHIBICION")
.WriteAttributeString("noCertificado", "30001000000100000800")
.WriteAttributeString("certificado", Convert.ToBase64String(CerSAT.GetRawCertData)) 'Ver Tema "Extracción del Número de Certificado del SAT en Visual Basic".
.WriteAttributeString("condicionesDePago", "CONTADO/CRÉDITO")
.WriteAttributeString("subTotal", "488.50")
.WriteAttributeString("descuento", "0.00")
.WriteAttributeString("total", "488.50")
.WriteAttributeString("metodoDePago", "Efectivo")
.WriteAttributeString("tipoDeComprobante", "ingreso")

'Emisor -----------------------------------
'.WriteStartElement("Emisor")
.WriteStartElement(prefix:=Prefijo, localName:="Emisor", ns:=EspacioDeNombre)
.WriteAttributeString("rfc", "XAXX010101")
.WriteAttributeString("nombre", "COMPAÑIA DE PRUEBA")

'DomicilioFiscal ---
'.WriteStartElement("DomicilioFiscal")
.WriteStartElement(prefix:=Prefijo, localName:="DomicilioFiscal", ns:=EspacioDeNombre)
.WriteAttributeString("calle", "Domicilio Prueba")
.WriteAttributeString("colonia", "Domicilio Prueba")
.WriteAttributeString("municipio", "Domicilio Prueba")
.WriteAttributeString("estado", "Domicilio Prueba")
.WriteAttributeString("pais", "MEXICO")
.WriteAttributeString("codigoPostal", "99000")
.WriteEndElement()
'---
.WriteEndElement()
'------------------------------------------ Emisor

'Receptor ---------------------------------
'.WriteStartElement("Receptor")
.WriteStartElement(prefix:=Prefijo, localName:="Receptor", ns:=EspacioDeNombre)
.WriteAttributeString("rfc", "XAXX010101")
.WriteAttributeString("nombre", "COMPAÑIA DE PRUEBA")

'Domicilio ---
'.WriteStartElement("Domicilio")
.WriteStartElement(prefix:=Prefijo, localName:="DomicilioFiscal", ns:=EspacioDeNombre)
.WriteAttributeString("calle", "Domicilio Prueba")
.WriteAttributeString("colonia", "Domicilio Prueba")
.WriteAttributeString("municipio", "Domicilio Prueba")
.WriteAttributeString("estado", "Domicilio Prueba")
.WriteAttributeString("pais", "MEXICO")
.WriteAttributeString("codigoPostal", "99000")
.WriteEndElement()
'---
.WriteEndElement()
'------------------------------------------ Receptor

'Partidas ---------------------------------
'.WriteStartElement("Conceptos")
.WriteStartElement(prefix:=Prefijo, localName:="Conceptos", ns:=EspacioDeNombre)

'Partida 1 ---
'.WriteStartElement("Concepto")
.WriteStartElement(prefix:=Prefijo, localName:="Concepto", ns:=EspacioDeNombre)
.WriteAttributeString("cantidad", "1")
.WriteAttributeString("unidad", "PIEZA")
.WriteAttributeString("noIdentificacion", "Código 123")
.WriteAttributeString("descripcion", "ARTÍCULO DE PRUEBA 1")
.WriteAttributeString("valorUnitario", "123.45")
.WriteAttributeString("importe", "123.45")
'Aquí va la información de aduanas.
.WriteEndElement()
'---

'Partida 2 ---
'.WriteStartElement("Concepto")
.WriteStartElement(prefix:=Prefijo, localName:="Concepto", ns:=EspacioDeNombre)
.WriteAttributeString("cantidad", "1")
.WriteAttributeString("unidad", "PIEZA")
.WriteAttributeString("noIdentificacion", "Código 987")
.WriteAttributeString("descripcion", "ARTÍCULO DE PRUEBA 2")
.WriteAttributeString("valorUnitario", "99.55")
.WriteAttributeString("importe", "99.55")
'Aquí va la información de aduanas.
.WriteEndElement()
'---
.WriteEndElement()
'------------------------------------------ Partidas

'Impuestos --------------------------------
'.WriteStartElement("Impuestos")
.WriteStartElement(prefix:=Prefijo, localName:="Impuestos", ns:=EspacioDeNombre)
.WriteAttributeString("totalImpuestosTrasladados", "9.55")

'Traslados ---
'.WriteStartElement("Traslados")
.WriteStartElement(prefix:=Prefijo, localName:="Traslados", ns:=EspacioDeNombre)

'Traslado -
'.WriteStartElement("Traslado")
.WriteStartElement(prefix:=Prefijo, localName:="Traslado", ns:=EspacioDeNombre)
.WriteAttributeString("impuesto", "IVA")
.WriteAttributeString("tasa", "16.00")
.WriteAttributeString("importe", "9.55")
.WriteEndElement()
'- Traslado

.WriteEndElement()
'--- Traslados

.WriteEndElement()
'------------------------------------------ Impuestos
.WriteEndDocument()

.Flush() 'Graba datos.
.Close()
End With
End Using

'--------------------------------------------------------------------------------------------------
A mi me costó mucho trabajo hacerlo, espero les sea útil. Saludos!
Avatar de Usuario
Dado
Mensajes: 15981
Registrado: Mar Jul 06, 2010 7:56 pm

Re: Archivo XML (CFDI) en Visual Basic 2010 (.NET 4).

Mensaje por Dado »

@pimelsoft

He visto que haz estado muy activo PUBLICANDO TU CODIGO QUE CON TANTO ESFUERZO HAZ DESARROLLADO, y quiero enviarte un enorme GRACIAS por compartirlo.

Si MEXICO no es tan grande como deberia es porque hace falta MAS GENTE COMO TU. =)

Saludos.
Admin.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
pimelsoft
Mensajes: 6
Registrado: Mié Ene 18, 2012 8:30 pm

Re: Archivo XML (CFDI) en Visual Basic 2010 (.NET 4).

Mensaje por pimelsoft »

Otra ventaja de utilizar XmlWriter es que no es necesario utilizar las secuencias de escape (& " < > &apos;), ni para los acentos, ni “Ñ”, ya que este método garantiza la creación de un archivo XML válido que automáticamente escribe dichas secuencias.
Cerrado