• Viernes 29 de Marzo de 2024, 16:49

Autor Tema:  Convertir el contenido de un archivo DBF a un Documento XML  (Leído 2181 veces)

AlfonzoCCS

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Convertir el contenido de un archivo DBF a un Documento XML
« en: Martes 5 de Agosto de 2008, 16:27 »
0
Hola a todos, necesito hacer una aplicacion que me permita conectarme a un archivo .DBF y convertir lo que esta en ese archivo en un documento XML y viceversa, quien podria darme una mano con este problema porque ademas, para colmo, soy nuevo en C#.

Gracias de antemano a quien pueda contestarme la inquietud...

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Convertir el contenido de un archivo DBF a un Documento XML
« Respuesta #1 en: Martes 5 de Agosto de 2008, 22:54 »
0
Es sencillo, esto es lo que tienen que hacer.

1. Aprende sobre ADO.NET, puedes leer en la pagina del guille (http://www.elguille.info) para empezar.

2. Aprende sobre System.XML, la siguiente pagina te puede ayudar: http://www.devjoker.com/asp/ver_conteni ... ntenido=29

3. Ya que sepas lo anterior, solo debes hacer conexiones a la base de datos mediante ado.net, a continuacion una pagina en donde vienen las cadenas de conexion para archivos de dbase utilizando OLE DB: http://www.connectionstrings.com/?carrier=dbffoxpro

Si necesitas mas informacion, busca en google.

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

AlfonzoCCS

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Convertir el contenido de un archivo DBF a un Documento XML
« Respuesta #2 en: Viernes 29 de Agosto de 2008, 01:19 »
0
Hola Profe X gracias por la informacion me sirvio bastante, te tengo una nueva pregunta ojala puedas ayudarme.
Mira este XML

<?xml version="1.0" standalone="yes" ?>
- <MasterData>
- <producto>
  <codigo>mayo008</codigo>
  <descripcion>mayonesa pequena</descripcion>
  <nombrecorto>mayonesa1</nombrecorto>
  <unidades>unidad</unidades>
  <costo>3.45</costo>
  <precio>5.25</precio>
  <existencias>100</existencias>
  </producto>
  </MasterData>

Es normalito, con un simple DataTable lo puedo recorrer y armar la parte final de un insert (despues del VALUE). El problema es que esos valores van a una tabla en una BD. El detalle es que tengo que conocer el tipo de dato de cada uno de los contenidos de los tag para poder insertar en la tabla.
Para solucionar ese problema coloque a cada tag un atributo... algo asi...

<?xml version="1.0" standalone="yes" ?>
- <MasterData>
- <producto>
  <codigo datatype="string">mayo008</codigo>
  <descripcion datatype="string">mayonesa pequena</descripcion>
  <nombrecorto datatype="string">mayonesa1</nombrecorto>
  <unidades datatype="string">unidad</unidades>
  <costo datatype="double">3.45</costo>
  <precio datatype="double">5.25</precio>
  <existencias datatype="integer">100</existencias>
  </producto>
  </MasterData>

Ahora bien, cuando trato de volver a recorrerlo la aplicacion se vuelve loca porque al cambiarle la estructura al xml cambia todo... Tengo 2 dias razonandolo... sera que adicionalmente al DataSet necesito recorrerlo con clases puramente XML?.
Dame una mano... si otra persona lee este mensaje por favor agradeceria la ayuda... :unsure:

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Convertir el contenido de un archivo DBF a un Documento XML
« Respuesta #3 en: Viernes 29 de Agosto de 2008, 03:30 »
0
Como dices, es normal que la aplicacion se vuelva "loca" cuando cambias el XML, es que en realidad me parece que no tendrias que cambiarlo. No estoy muy seguro de lo que estas haciendo y lo que quieras hacer, pero por lo que me comentas, supongo que solo quieres insertar el dato del xml en la base de datos. En ese caso, si conoces cual es la estructura de la base de datos, y el orden de los campos no va a cambiar, podrias hacer una conversion de cada campo antes de insertar con la clase System.Convert().

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================