Fichero con etiquetas

29/07/2003 - 10:55 por Valentín Playá \(Sonotronic\) | Informe spam
Hola,

tengo un fichero de texto con el formato que os pongo abajo. Hay etiquetas
de comienzo y final, con el contenido del campo entre las etiquetas, me
parece similar al XML.

Mi pregunta es si alquién sabe como importar este fichero a Excel, Access o
similar de forma que reconozca las etiquetas como nombre de campo con el
contenido correspondiente y lo ponga en filas y columnas.

Os agradeceré cualquier sugerencia.

Gracias y saludos,

Valentín Playá
Sonotronic S.A.
Madrid
*******************************************************

<DOMAIN>LANZAMIENTO 1 <\DOMAIN>
<DATE>16/07/2002<\DATE>
<DEVISE>EUR <\DEVISE>
<NUMCPT5> <\NUMCPT5>
<NUMFACT5> 15<\NUMFACT5>
<DATEFACT5>20/12/2002<\DATEFACT5>
<NUMPROD5>9123455180<\NUMPROD5>
<INDICCEPROD5> 01<\INDICCEPROD5>
<DESIGNA5>LUZ AAA <\DESIGNA5>
<QTEFACT5> 5.0000<\QTEFACT5>
<PRIX5> 93.3700<\PRIX5>
<PRIXTOT5> 16.2500<\PRIXTOT5>
<CODEFOU5>400131F <\CODEFOU5>
<RAISOCFO5>WSWSSW <\RAISOCFO5>
<NUMBORD5>0123127 <\NUMBORD5>
<MOYENPR5>S<\MOYENPR5>
<NUMRECEPT5> 91392<\NUMRECEPT5>
<GRATUIT5> <\GRATUIT5>
<NUMPROD5>9623121212<\NUMPROD5>
<INDICCEPROD5> 02<\INDICCEPROD5>
<DESIGNA5>QQQQQQ <\DESIGNA5>
<QTEFACT5> 51.0000<\QTEFACT5>
<PRIX5> 92.100<\PRIX5>

Preguntas similare

Leer las respuestas

#1 Patrick Espinosa
29/07/2003 - 18:30 | Informe spam
A nivel de programación necesitarías por lo menos 3 cosas: (si buscas un
programa o utilería que lo haga entonces no sigas leyendo).

1) Un parser de XML para recorrer sus nodos y obtener la información
2) Un lenguaje de programación para escribir el código de acceso al xml y a
la base de datos
3) Un sistema administrador de bases de datos.

Yo por ejemplo estoy utilizando ASP (con javascript), el parser de Microsoft
(MSXML) y SQL Server.

Un ejemplo muy a grandes rasgos sería el siguiente:

//CARGAS EL XML
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.async = false;

if (xmlDoc.loadXML(strxml))
{
//ACCESAS A LOS NODOS
var root = xmlDoc.documentElement;
var apellido = ""; apellido += root.firstChild.nodeValue;

//CONSTRUYES EL STRING SQL
var strsql = "EXEC XGP_US0102_NuevoUsuario 'Prueba','";
strsql += apellido2 + "','"; strsql += apellido2 + "'";

//CREAS LA CONEXION
var ADOConn = Server.CreateObject("ADODB.Connection");
ADOConn.Open(NOMBRE_BD); // Crea recordset
ADOConn.BeginTrans();

try {

//EJECUTAS EL SQL (que en tu caso sería de inserción de campos y
actualización de registros)
ADOConn.Execute(strsql);
ADOConn.CommitTrans();
// Cerrarías el recordset
}
catch(e) // Error en el acceso a la BBDD
{
ADOConn.RollbackTrans();
}
ADOConn.Close();
}

Saludos
Patrick.

"Valentín Playá (Sonotronic)" wrote in message
news:
Hola,

tengo un fichero de texto con el formato que os pongo abajo. Hay etiquetas
de comienzo y final, con el contenido del campo entre las etiquetas, me
parece similar al XML.

Mi pregunta es si alquién sabe como importar este fichero a Excel, Access


o
similar de forma que reconozca las etiquetas como nombre de campo con el
contenido correspondiente y lo ponga en filas y columnas.

Os agradeceré cualquier sugerencia.

Gracias y saludos,

Valentín Playá
Sonotronic S.A.
Madrid
*******************************************************

<DOMAIN>LANZAMIENTO 1 <\DOMAIN>
<DATE>16/07/2002<\DATE>
<DEVISE>EUR <\DEVISE>
<NUMCPT5> <\NUMCPT5>
<NUMFACT5> 15<\NUMFACT5>
<DATEFACT5>20/12/2002<\DATEFACT5>
<NUMPROD5>9123455180<\NUMPROD5>
<INDICCEPROD5> 01<\INDICCEPROD5>
<DESIGNA5>LUZ AAA <\DESIGNA5>
<QTEFACT5> 5.0000<\QTEFACT5>
<PRIX5> 93.3700<\PRIX5>
<PRIXTOT5> 16.2500<\PRIXTOT5>
<CODEFOU5>400131F <\CODEFOU5>
<RAISOCFO5>WSWSSW <\RAISOCFO5>
<NUMBORD5>0123127 <\NUMBORD5>
<MOYENPR5>S<\MOYENPR5>
<NUMRECEPT5> 91392<\NUMRECEPT5>
<GRATUIT5> <\GRATUIT5>
<NUMPROD5>9623121212<\NUMPROD5>
<INDICCEPROD5> 02<\INDICCEPROD5>
<DESIGNA5>QQQQQQ <\DESIGNA5>
<QTEFACT5> 51.0000<\QTEFACT5>
<PRIX5> 92.100<\PRIX5>



Respuesta Responder a este mensaje
#2 Valentín Playá \(Sonotronic\)
03/08/2003 - 21:47 | Informe spam
Patrick,

muchas gracias por tu respuesta, he intentado seguir tus instrucciones pero
me he perdido posiblemente por mi falta de conocimientos.

Por otro lado he visto algunas referencias a que es posible abrir en Excel
un fichero como tipo XML y ya está. Mi Excel 2000 no tiene opción de
importar ficheros XML es posible que sea algo incorporado en Excel 2002.

De tu exposición deduzco que no hay una solución fácil. ¿Existe o no la
opción de importar a Excel un fichero XML?.

Gracias y saludos,

Valentín Playá
Sonotronic S.A.
Madrid
*********************************************

"Patrick Espinosa" escribió en el mensaje
news:ORA1%
A nivel de programación necesitarías por lo menos 3 cosas: (si buscas un
programa o utilería que lo haga entonces no sigas leyendo).

1) Un parser de XML para recorrer sus nodos y obtener la información
2) Un lenguaje de programación para escribir el código de acceso al xml y


a
la base de datos
3) Un sistema administrador de bases de datos.

Yo por ejemplo estoy utilizando ASP (con javascript), el parser de


Microsoft
(MSXML) y SQL Server.

Un ejemplo muy a grandes rasgos sería el siguiente:

//CARGAS EL XML
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.async = false;

if (xmlDoc.loadXML(strxml))
{
//ACCESAS A LOS NODOS
var root = xmlDoc.documentElement;
var apellido = ""; apellido += root.firstChild.nodeValue;

//CONSTRUYES EL STRING SQL
var strsql = "EXEC XGP_US0102_NuevoUsuario 'Prueba','";
strsql += apellido2 + "','"; strsql += apellido2 + "'";

//CREAS LA CONEXION
var ADOConn = Server.CreateObject("ADODB.Connection");
ADOConn.Open(NOMBRE_BD); // Crea recordset
ADOConn.BeginTrans();

try {

//EJECUTAS EL SQL (que en tu caso sería de inserción de campos y
actualización de registros)
ADOConn.Execute(strsql);
ADOConn.CommitTrans();
// Cerrarías el recordset
}
catch(e) // Error en el acceso a la BBDD
{
ADOConn.RollbackTrans();
}
ADOConn.Close();
}

Saludos
Patrick.

"Valentín Playá (Sonotronic)" wrote in message
news:
> Hola,
>
> tengo un fichero de texto con el formato que os pongo abajo. Hay


etiquetas
> de comienzo y final, con el contenido del campo entre las etiquetas, me
> parece similar al XML.
>
> Mi pregunta es si alquién sabe como importar este fichero a Excel,


Access
o
> similar de forma que reconozca las etiquetas como nombre de campo con el
> contenido correspondiente y lo ponga en filas y columnas.
>
> Os agradeceré cualquier sugerencia.
>
> Gracias y saludos,
>
> Valentín Playá
> Sonotronic S.A.
> Madrid
> *******************************************************
>
> <DOMAIN>LANZAMIENTO 1 <\DOMAIN>
> <DATE>16/07/2002<\DATE>
> <DEVISE>EUR <\DEVISE>
> <NUMCPT5> <\NUMCPT5>
> <NUMFACT5> 15<\NUMFACT5>
> <DATEFACT5>20/12/2002<\DATEFACT5>
> <NUMPROD5>9123455180<\NUMPROD5>
> <INDICCEPROD5> 01<\INDICCEPROD5>
> <DESIGNA5>LUZ AAA <\DESIGNA5>
> <QTEFACT5> 5.0000<\QTEFACT5>
> <PRIX5> 93.3700<\PRIX5>
> <PRIXTOT5> 16.2500<\PRIXTOT5>
> <CODEFOU5>400131F <\CODEFOU5>
> <RAISOCFO5>WSWSSW <\RAISOCFO5>
> <NUMBORD5>0123127 <\NUMBORD5>
> <MOYENPR5>S<\MOYENPR5>
> <NUMRECEPT5> 91392<\NUMRECEPT5>
> <GRATUIT5> <\GRATUIT5>
> <NUMPROD5>9623121212<\NUMPROD5>
> <INDICCEPROD5> 02<\INDICCEPROD5>
> <DESIGNA5>QQQQQQ <\DESIGNA5>
> <QTEFACT5> 51.0000<\QTEFACT5>
> <PRIX5> 92.100<\PRIX5>
>
>
>


Respuesta Responder a este mensaje
#3 Valentín Playá \(Sonotronic\)
06/08/2003 - 15:55 | Informe spam
Patrick,

creo que esto excede mis conocimientos y el tiempo que ahora puedo
dedicarle, tendrán que seguir haciendo a mano la conversión. Yo queria usar
esto como mi primera incursión en el mundo del XML, haré otro intento más
adelante cuando los productos y yo estemos más preparados.

Gracias de todas formas,

Valentín Playá
Sonotronic S.A.
Madrid
**********************************************************
"Patrick Espinosa" escribió en el mensaje
news:%
Que tal Valentín,

Disculpa que no te haya contestado antes, no había leído las noticias del
grupo.

He investigado un poco y parece ser que las funciones que has mencionado
para importar XML, sólo vienen en el Excel 2003. También he encontrato un
artículo bastante bueno que habla sobre la creación de hojas de cálculo en
excel (cuando no tienes la versión 2003) a partir de un xml, lo malo es


que
está en inglés, el URL es:
http://www.dpawson.co.uk/xsl/sect4/...sheet.html

A grandes rasgos el artículo dice que podrías importar tu xml en excel de
diferentes formas:
1) Conviertiendo el xml a un archivo CSV (variables separadas por coma) ya
que excel si acepta es formato de importación.
2) Generando un archivo HTML a partir del xml y después utilizar la


función
de importación en Excel 2000.
3) Crear un script en Excel que llame al parser de XML o llamando una
interface COM (hecha por ejemplo en VB) desde Excel que utilice el parser
XML . (Este script o interface COM crearán un archivo CSV que podrás
importar a Excel).
4) Crear una hoja de cálculo en Excel, salvarla con el comando "Save As
HTML" y analizar el código producido. Después duplicas el html con los


datos
de tu XML y así podrás reimportarlo a Excel, es decir, producirás un HTML
que Excel puede entender. En esta opción enfatiza que tal vez en algunos
países podría ser ilegal reproducir el formato de importación (ingeniería
inversa) y tendrías que verificarlo para tu país.
5) Utulizar XSLT para transformar tu XML en formatos que puedan ser
reconocidos en Excel, que serían: Tab Delimited Data (Información


delimitada
por tabulaciones), CSV (Valores separados por coma), tabla HTML, formato
Office 2000's HTML+XML, SYLK (liga simbólica).

También menciona que puedes realizar la conversión comprando la


herramienta
iMaker y te da más información al respecto.

Eso es todo Valentín, espero haberte ayudado y si necesitas algo más pues
estoy a tus órdenes.
Patrick Espinosa.
Barcelona..

"Valentín Playá (Sonotronic)" wrote in message
news:
> Patrick,
>
> muchas gracias por tu respuesta, he intentado seguir tus instrucciones
pero
> me he perdido posiblemente por mi falta de conocimientos.
>
> Por otro lado he visto algunas referencias a que es posible abrir en


Excel
> un fichero como tipo XML y ya está. Mi Excel 2000 no tiene opción de
> importar ficheros XML es posible que sea algo incorporado en Excel 2002.
>
> De tu exposición deduzco que no hay una solución fácil. ¿Existe o no la
> opción de importar a Excel un fichero XML?.
>
> Gracias y saludos,
>
> Valentín Playá
> Sonotronic S.A.
> Madrid
> *********************************************
>
> "Patrick Espinosa" escribió en el mensaje
> news:ORA1%
> > A nivel de programación necesitarías por lo menos 3 cosas: (si buscas


un
> > programa o utilería que lo haga entonces no sigas leyendo).
> >
> > 1) Un parser de XML para recorrer sus nodos y obtener la información
> > 2) Un lenguaje de programación para escribir el código de acceso al


xml
y
> a
> > la base de datos
> > 3) Un sistema administrador de bases de datos.
> >
> > Yo por ejemplo estoy utilizando ASP (con javascript), el parser de
> Microsoft
> > (MSXML) y SQL Server.
> >
> > Un ejemplo muy a grandes rasgos sería el siguiente:
> >
> > //CARGAS EL XML
> > var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
> > xmlDoc.async = false;
> >
> > if (xmlDoc.loadXML(strxml))
> > {
> > //ACCESAS A LOS NODOS
> > var root = xmlDoc.documentElement;
> > var apellido = ""; apellido += root.firstChild.nodeValue;
> >
> > //CONSTRUYES EL STRING SQL
> > var strsql = "EXEC XGP_US0102_NuevoUsuario 'Prueba','";
> > strsql += apellido2 + "','"; strsql += apellido2 + "'";
> >
> > //CREAS LA CONEXION
> > var ADOConn = Server.CreateObject("ADODB.Connection");
> > ADOConn.Open(NOMBRE_BD); // Crea recordset
> > ADOConn.BeginTrans();
> >
> > try {
> >
> > //EJECUTAS EL SQL (que en tu caso sería de inserción de campos y
> > actualización de registros)
> > ADOConn.Execute(strsql);
> > ADOConn.CommitTrans();
> > // Cerrarías el recordset
> > }
> > catch(e) // Error en el acceso a la BBDD
> > {
> > ADOConn.RollbackTrans();
> > }
> > ADOConn.Close();
> > }
> >
> > Saludos
> > Patrick.
> >
> > "Valentín Playá (Sonotronic)" wrote in message
> > news:
> > > Hola,
> > >
> > > tengo un fichero de texto con el formato que os pongo abajo. Hay
> etiquetas
> > > de comienzo y final, con el contenido del campo entre las


etiquetas,
me
> > > parece similar al XML.
> > >
> > > Mi pregunta es si alquién sabe como importar este fichero a Excel,
> Access
> > o
> > > similar de forma que reconozca las etiquetas como nombre de campo


con
el
> > > contenido correspondiente y lo ponga en filas y columnas.
> > >
> > > Os agradeceré cualquier sugerencia.
> > >
> > > Gracias y saludos,
> > >
> > > Valentín Playá
> > > Sonotronic S.A.
> > > Madrid
> > > *******************************************************
> > >
> > > <DOMAIN>LANZAMIENTO 1 <\DOMAIN>
> > > <DATE>16/07/2002<\DATE>
> > > <DEVISE>EUR <\DEVISE>
> > > <NUMCPT5> <\NUMCPT5>
> > > <NUMFACT5> 15<\NUMFACT5>
> > > <DATEFACT5>20/12/2002<\DATEFACT5>
> > > <NUMPROD5>9123455180<\NUMPROD5>
> > > <INDICCEPROD5> 01<\INDICCEPROD5>
> > > <DESIGNA5>LUZ AAA <\DESIGNA5>
> > > <QTEFACT5> 5.0000<\QTEFACT5>
> > > <PRIX5> 93.3700<\PRIX5>
> > > <PRIXTOT5> 16.2500<\PRIXTOT5>
> > > <CODEFOU5>400131F <\CODEFOU5>
> > > <RAISOCFO5>WSWSSW <\RAISOCFO5>
> > > <NUMBORD5>0123127 <\NUMBORD5>
> > > <MOYENPR5>S<\MOYENPR5>
> > > <NUMRECEPT5> 91392<\NUMRECEPT5>
> > > <GRATUIT5> <\GRATUIT5>
> > > <NUMPROD5>9623121212<\NUMPROD5>
> > > <INDICCEPROD5> 02<\INDICCEPROD5>
> > > <DESIGNA5>QQQQQQ <\DESIGNA5>
> > > <QTEFACT5> 51.0000<\QTEFACT5>
> > > <PRIX5> 92.100<\PRIX5>
> > >
> > >
> > >
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida