Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

Alguien Sabe Como Utilizar Los Componentes XML

Alguien Sabe Como Utilizar Los Componentes XML
Artículo
Responder citando    Descargar mensaje  
Mensaje Alguien Sabe Como Utilizar Los Componentes XML 
 
Buenas tardes.

Estoy intentando utilizar el componente XML de gambas 3,  tengo una base de datos en postgresql y postgresql tiene una funcion que te devuelve
una fila en formato XML ejemplo:
    ss = "Select query_to_xml( 'select id,,id_cliente, total, fecha from w_totalalbaran where fecha >''01-10-2012''',false,false,'')"
    re = con.Exec(ss)
    st = re[0]
 

Me devuelve una consulta con el siguiente formato:
<table xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <row>
  <id>   35888  </id>
  <num_documento>   8140  </num_documento>
  <id_cliente>   20  </id_cliente>
  <total>   13.50  </total>
  <fecha>   2012-10-02  </fecha>
 </row>
</table>

pienso coño esto es rapidisimo y con 4 lineas de codigo y un archivo  css  puedes hacer cualquier consulta a la BD y  formatear como quieras el XML .
Mi problema es que no encuentro como insertar en el archivo XML la cabecera para el CSS :  "<?xml-stylesheet href='pp.css' title='Pruebas con XML'?>"

Estoy probando con el codigo:
Citar:

    Dim re As Result, jj As XmlDocument, sT As String
    jj = New XmlDocument
    ss = "Select query_to_xml( 'select id,num_documento,id_cliente, total, fecha from w_totalalbaran where fecha >''01-10-2012''',false,false,'')"
    re = con.Exec(ss)
    sT = re[0]
    jj.FromString(sT)
     jj.Write("pp.xml", "UTF-8")


Y me crea el fichero pp.xml bien, pero no se como insertar la cadena    "<?xml-stylesheet href='pp.css' title='Pruebas con XML'?>" para que el navegador me formatee el archivo XML.

El componente  XmlDocument no parece que tenga ningun metodo para eso, el unico componente que parece que tiene es el componente   XmlWriter con el metodo PI, pero no se si se puede relacionar XmlDocument con XmlWriter.



 
angelnu - Ver perfil del usuario Enviar mensaje privado  
angelnu [ Viernes, 19 Octobre 2012, 14:59 ]
 


Alguien Sabe Como Utilizar Los Componentes XML
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: Alguien Sabe Como Utilizar Los Componentes XML 
 
La consulta en xml, esta en un archivo,¿ verdad?

Se me ocurre que  la abras como un archivo de texto plano, le añades el texto y luego lo guardes...


dim cadena_de_texto as string
'ruta es la ruta y el nombre del archivo de extension xml
cadena_de_texto = "texto que quieres de inicio" ' le añado el codigo que quieres
cadena_de_texto &= File.Load(ruta) ' le añado el contenido del archivo xml

file.Save(ruta, cadena_de_texto) ' lo guardo todo en el archivo con el mismo nombre, ya incluida el texto que quiero




 
jsbsan - Ver perfil del usuario Enviar mensaje privado  
jsbsan [ Viernes, 19 Octobre 2012, 18:37 ]
Responder citando    Descargar mensaje  
Mensaje Re: Alguien Sabe Como Utilizar Los Componentes XML 
 
Hola

Puedes usar diferentes métodos existentes en la clase XmlElement para insertar ese nodo.

http://gambasdoc.org/help/comp/gb.xml/xmlelement?v3

También existe otro componente que se llama gb.xml.html que tiene la clase HtmlDocument que podría ayudarte si tu objetivo final es crear un documento Html con estilos css. Mirando la documentación he visto que dispone de una propiedad  StyleSheets que posiblemente realice lo que pides. Aparte éste hereda algunas clases de Xml que también se pueden usar sin activar gb.xml.

http://gambasdoc.org/help/comp/gb.x.../stylesheets?v3

Saludos



 
jguardon - Ver perfil del usuario Enviar mensaje privado  
jguardon [ Viernes, 19 Octobre 2012, 18:52 ]
Responder citando    Descargar mensaje  
Mensaje Re: Alguien Sabe Como Utilizar Los Componentes XML 
 
Gracias a jsbsan y a jguardon por sus respuestas..
Citar:

La consulta en xml, esta en un archivo,¿ verdad?


No la consulta la obtengo de la base de datos mediante una funcion interna de postgresql (Select query_to_xml) que me devuelve una fila con la consulta formateada en XML.
Lo que yo hago es crear un archivo XML con el siguiente codigo , que funciona .
    Dim sT As String, ss As String
    Dim Re As Result, Ffiche As File

    ss = "Select query_to_xml( 'select id,num_documento,id_cliente, total, fecha from w_totalalbaran where fecha >''01-10-2012'' LIMIT 5',true,false,'consulta')"
   ' ss = "Select query_to_xml( 'select id,nombre, cif, correo_electronico, direccion,poblacion, pagina_web from clientes' ,true,false,'consulta')"
    re = con.Exec(ss)
    st = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
    st &= "<?xml-stylesheet href='" & Application.Path &/ "pp.css' title='Estilo'?>\n\n"
    sT &= re[0]
    Ffiche = Open "/tmp/pp.xml" For Input Create
    Print #Ffiche, st
    Ffiche.Close
 

Lo que yo quiero es poder añadir el CSS a la cabecera del fichero XML y estoy intentando utiliar el componente XML por aprender pero no veo ninguna manera para poder editarlo he intentado utilizar XLMElement pero no funciona
    Dim re As Result
    Dim sT As String, ss As String, Xs As XmlDocument
    Dim pp As XmlElement, xn As XmlElement

    ss = "Select query_to_xml( 'select id,num_documento,id_cliente, total, fecha from w_totalalbaran where fecha >''01-10-2012'' LIMIT 5',true,false,'consulta')"
    re = con.Exec(ss)
    sT = re[0]

    xs = New XmlDocument
    xn = New XmlElement("?xml-stylesheet href='" & Application.Path &/ "pp.css' title='Estilo'?")
    xs.Root.AppendChild(xn)
    xs.Root.AppendFromText(st)
    xs.Save("/tmp/pp.xml", True)
 

Me crea un nuevo elemento vacio pero despues de la etiquea xml  asi:
<xml>
 <?xml-stylesheet href='/home/angel/gambas3/probar/pp.css' title='Estilo'?>
 </?xml-stylesheet href='/home/angel/gambas3/probar/pp.css' title='Estilo'?>



 
angelnu - Ver perfil del usuario Enviar mensaje privado  
angelnu [ Sabado, 20 Octobre 2012, 11:32 ]
Mostrar mensajes anteriores:    
 
Publicar nuevo tema  Responder al tema  Página 1 de 1
 
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 



 

cron