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

XPATH ireports XMLDatasource

Estas en el tema de XPATH ireports XMLDatasource en el foro de Programación General en Foros del Web. La verdad es que no sé si será el foro más correcto, pero como está relacionado con temas de xml, xpath y demás... Si no ...
  #1 (permalink)  
Antiguo 04/03/2008, 17:14
 
Fecha de Ingreso: marzo-2007
Mensajes: 9
Antigüedad: 17 años, 1 mes
Puntos: 0
XPATH ireports XMLDatasource

La verdad es que no sé si será el foro más correcto, pero como está relacionado con temas de xml, xpath y demás... Si no es así hacermelo saber y lo cambio :)

Estoy intentando generar un informe con jasperReport y para eso me apoyo en la herramienta ireports. Dicho informe tiene como fuente de datos un XML y mi problema es que a la hora de seleccionar un nodo repetible me pinta únicamente el primero de los 2 o 3 que haya.

La versión de ireports que uso es iReport-2.0.4 o iReport-2.0.2 (indiferente y no creo que influyente en este caso)

Mi XML es bastante extenso y para no ponerlo entero lo acorto:

<?xml version="1.0" encoding="ISO-8859-1"?>
<es.caunet.modelo.fichas.cliente.ListadoBuscarClie nte xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="i0">
<incPendientesResolver>
<cel id="i6">
<idIncidencia>2</idIncidencia>
<contrato xsi:nil="true"/>
<nincidencia>100003</nincidencia>
<nservicio>2</nservicio>
<textoExplicativo>El cable está roto</textoExplicativo>
<fechaApertura>2008-02-22T08:40:31+01:00</fechaApertura>
<fechaCierre>2008-02-22T08:41:11+01:00</fechaCierre>
<estadoIncidencia>0</estadoIncidencia>
<nllamadasCliente>1</nllamadasCliente>
<tiemporesolucion>40000</tiemporesolucion>
</cel>
<cel id="i7">
<idIncidencia>7</idIncidencia>
<contrato xsi:nil="true"/>
<nincidencia>100006</nincidencia>
<nservicio>3</nservicio>
<textoExplicativo>Ahora se podría hacer una prueba en el sistema</textoExplicativo>
<fechaApertura>2008-03-02T02:37:04+01:00</fechaApertura>
<fechaCierre>2008-03-02T02:38:33+01:00</fechaCierre>
<estadoIncidencia>0</estadoIncidencia>
<nllamadasCliente>1</nllamadasCliente>
<tiemporesolucion>89000</tiemporesolucion>
</cel>
</incPendientesResolver>
</es.caunet.modelo.fichas.cliente.ListadoBuscarClien te>

Si yo quiero generarme una tabla de una columna y dos filas con el nodo nincidencia creo que debería hacer algo como:

/es.caunet.modelo.fichas.cliente.ListadoBuscarClien te/incPendientesResolver/cel/nincidencia

Pero sólo me pinta el primero aunque sí que me diga que ha cogido los dos en la ayuda al xpath que tiene.
He probado con varias alternativas:
/es.caunet.modelo.fichas.cliente.ListadoBuscarClien te/incPendientesResolver//cel/nincidencia
/es.caunet.modelo.fichas.cliente.ListadoBuscarClien te/incPendientesResolver/*/nincidencia

Estas entre otras, pero lo cierto es que sólo me saca el 100003 de la primera y no el 100003 y 100006 que debería y en forma de tabla que para eso lo tengo...

¿Alguna idea?

Muchas gracias de antemano
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 15:08.