Foros del Web » Programación para mayores de 30 ;) » .NET »

Generar archivo XML con estructura XS

Estas en el tema de Generar archivo XML con estructura XS en el foro de .NET en Foros del Web. Hola amigos quiero generar mi xml de la siguiente manera, y como seria en vb.net 2010 claro. <cfdi:Addenda> - <AddendaCFDSorianaServicios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" tipo="MIPRODUCTO" version="1.0"> <Proveedor>2670</Proveedor> ...
  #1 (permalink)  
Antiguo 06/10/2012, 10:34
Avatar de NetFcruz  
Fecha de Ingreso: agosto-2012
Ubicación: Reynosa
Mensajes: 32
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Generar archivo XML con estructura XS

Hola amigos quiero generar mi xml de la siguiente manera, y como seria en vb.net 2010 claro.

<cfdi:Addenda>
- <AddendaCFDSorianaServicios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" tipo="MIPRODUCTO" version="1.0">
<Proveedor>2670</Proveedor>
<UnidadNegocio>10</UnidadNegocio>
- <Conceptos>
<Concepto descripcion="ARTICULOS PUBLICITARIOS" unidades="1" valorUnitario="10.62" importe="10.62" />
</Conceptos>
<FolioReferencia>501922</FolioReferencia>
- <Impuestos totalTrasladado="10.38">
- <Traslados>
<Traslado impuesto="IVA" tasa="11.00" importe="12.38" />
</Traslados>
</Impuestos>
<Subtotal>10.62</Subtotal>
<Total>12.00</Total>
</AddendaCFDSorianaServicios>
</cfdi:Addenda>

Saludos.
Para esto mi code es asi, solo que genera solo en fotamto utf-8 pero no como ese tipo de formato oesquema.


'Declaro variable array para los libros

Dim objAddenda As New stcAddenda
Dim objAddendas As New ArrayList


'Variable para el Archivo Xml
Dim myXmlTextWriter As XmlTextWriter = New XmlTextWriter("C:\XML\Addenda.xml", System.Text.Encoding.UTF8)

'Anado objAddenda
'Anado unas caracteristicas de Addenda
objAddenda.NumProv = TXTNP.Text
objAddenda.NumTienda = TXTNT.Text
objAddenda.TipoEmpaque = CBOTE.Text
objAddenda.NumTiendaEnt = TXTNTE.Text
objAddenda.CantBul = CBOCB.Text
objAddenda.FecEnt = DTPFEM.Text
objAddenda.FolioCita = TXTFC.Text
objAddenda.FolNotEnt = TXTFNE.Text
objAddenda.FP = TXTFP.Text
objAddenda.PEP = TXTPEP.Text


'AGREGO ADDENDA A COLECCION
objAddendas.Add(objAddenda)


'Formatea indentado el archivo
myXmlTextWriter.Formatting = System.Xml.Formatting.Indented

'Si escribe la inicializacion del Archivo
myXmlTextWriter.WriteStartDocument(True)

'Escribe un Comentario
' myXmlTextWriter.WriteComment("Esto es Fragmento de Addenda")

'Crear el elemento principal del documento
myXmlTextWriter.WriteStartElement("cfdiAddenda")
'myXmlTextWriter.WriteAttributeString("tipo", "Reverse")


'---------------------------ADDENDA-------------------------------

'Ciclo para incluir los elementos de la colección
For Each oAddenda As stcAddenda In objAddendas

'Escribe el inicio del elemento cfdi: Addenda
myXmlTextWriter.WriteStartElement("AddendaCFDSoria naReverse")
myXmlTextWriter.WriteAttributeString("tipo", "Reverse")

'Crear un elemento llamado 'NumProv' con un nodo de texto
myXmlTextWriter.WriteStartElement("NumProv")

'Escribe el Titulo
' myXmlTextWriter.WriteString(oAddenda.TipoAddenda)

'Crear un elemento llamado 'NumProv' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("NumProv", oAddenda.NumProv)


'Cierra el elemento.
myXmlTextWriter.WriteEndElement()

'Crear un elemento llamado 'NumTienda'.
myXmlTextWriter.WriteStartElement("NumTienda")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("NumTienda", oAddenda.NumTienda)

'Cerrar el elemento primario.
myXmlTextWriter.WriteEndElement()

'Crear un elemento llamado 'last-name' con un nodo de texto.
'myXmlTextWriter.WriteElementString("cfdi:Concepto ", oAddenda.Concepto)

'Crear un elemento llamado 'TipoEmpaque'.
myXmlTextWriter.WriteStartElement("TipoEmpaque")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("TipoEmpaque", oAddenda.TipoEmpaque)

'Cerrar el elemento primario.
myXmlTextWriter.WriteEndElement()



'Crear un elemento llamado 'NumTiendaEnt'.
myXmlTextWriter.WriteStartElement("NumTiendaEnt")

'Crear un elemento llamado 'cfdi:NumTienda' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("NumTiendaEnt", oAddenda.NumTiendaEnt)

'Cerra el 3

myXmlTextWriter.WriteEndElement()


'Crear un elemento llamado 'CantBul'.
myXmlTextWriter.WriteStartElement("CantBul")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("CantBul", oAddenda.CantBul)

'Cerrar el 4
myXmlTextWriter.WriteEndElement()

'Crear un elemento llamado 'FecEnt'.
myXmlTextWriter.WriteStartElement("FecEnt")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("FecEnt", oAddenda.FecEnt)

'Cerrar el 5

myXmlTextWriter.WriteEndElement()

'Crear un elemento llamado 'FolioCita'.
myXmlTextWriter.WriteStartElement("FolioCita")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("FolioCita", oAddenda.FolioCita)

'Cerrar el 6

myXmlTextWriter.WriteEndElement()


'Crear un elemento llamado 'FolNotEnt'.
myXmlTextWriter.WriteStartElement("FolNotEnt")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("FolNotEnt", oAddenda.FolNotEnt)

'Cerrar el 7

myXmlTextWriter.WriteEndElement()


'Crear un elemento llamado 'FP'.
myXmlTextWriter.WriteStartElement("FP")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("FP", oAddenda.FP)

'Cerrar el 8

myXmlTextWriter.WriteEndElement()

'Crear un elemento llamado 'PEP'.
myXmlTextWriter.WriteStartElement("PEP")

'Crear un elemento llamado 'cfdi:Concepto' con un nodo de texto
' y cerrarlo en una línea.
myXmlTextWriter.WriteElementString("PEP", oAddenda.PEP)

'Cerrar el 9

myXmlTextWriter.WriteEndElement()

Next

'Forza grabación a Disco
myXmlTextWriter.Flush()

'Cierra el Archivo
myXmlTextWriter.Close()


Podrian ayudarme amigos...
__________________
!El conocimiento se LIMITA cuando dices NO PUEDO!

By NetFcruz
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:46.