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

Sobre XSLT

Estas en el tema de Sobre XSLT en el foro de Programación General en Foros del Web. Hola amigos, recien estoy ingresando al mundo del XSLT y tengo una duda. Yo tengo una tabla la cual me llega de la siguiente forma. ...
  #1 (permalink)  
Antiguo 02/06/2010, 11:41
 
Fecha de Ingreso: octubre-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Exclamación Sobre XSLT

Hola amigos, recien estoy ingresando al mundo del XSLT y tengo una duda.

Yo tengo una tabla la cual me llega de la siguiente forma.

Pais - Ciudad - Nombre
Peru - Lima - Jorge
Peru - Arequipa - Andres
Chile - Santiago - Juan
Brasil - Sao Pablo - Giovani



y transformando a mi XML me llega asi

Código:
- <SQLData>
   - <Rows>
          <Pais>Peru</Pais> 
          <Ciudad>Lima</Ciudad> 
          <Nombre>Jorge</Nombre> 
      </Rows>
   - <Rows>
          <Pais>Peru</Pais> 
          <Ciudad>Arequipa</Ciudad> 
          <Nombre>Andres</Nombre> 
      </Rows>
   - <Rows>
          <Pais>Chile</Pais> 
          <Ciudad>Santiago</Ciudad> 
          <Nombre>Juan</Nombre> 
      </Rows>
   - <Rows>
          <Pais>Brasil</Pais> 
          <Ciudad>Sao Pablo</Ciudad> 
          <Nombre>Giovani</Nombre> 
      </Rows>
Al momento de imprimir mi XSLT me sale igual que la tabla de arriba, osea asi:

Pais - Ciudad - Nombre
Peru - Lima - Jorge
Peru - Arequipa - Andres
Chile - Santiago - Juan
Brasil - Sao Pablo - Giovani



Yo quiero que me salga de la siguiente forma

-------------------
PERU
-------------------
Lima
-------------------
Jorge
-------------------
Arequipa
-------------------
Juan
-------------------
CHILE
-------------------
Santiago
-------------------
Juan
-------------------
BRASIL
-------------------
Sao Pablo
-------------------
Giovani
-------------------
(Las lineas punteadas simulan las celdas de la tabla mostrada)

¿Existe la posibilidad de poder lograr eso?
Gracias por sus comentarios y respuestas.
  #2 (permalink)  
Antiguo 04/06/2010, 07:45
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 9 meses
Puntos: 90
Respuesta: Sobre XSLT

por supuesto que se puede, en el XSL puedes colocar el HTML que desees y colocar cada campo XML en una tabla por ejemplo...

como es tu XSL ?

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 04/06/2010, 07:50
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 9 meses
Puntos: 90
Respuesta: Sobre XSLT

algo así como

Cita:
<xsl:for-each select="SQLData/Rows">
<tr><td><xsl:value-of select="pais" /></td></tr>
</xsl:for-each>
__________________
Esteban Quintana
  #4 (permalink)  
Antiguo 04/06/2010, 11:53
 
Fecha de Ingreso: octubre-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Exclamación Respuesta: Sobre XSLT

Lo que yo quiero hacer son quiebres, cuando cambie de ciudad que se imprima la celda ciudad encima de la celda nombre y lo mismo con pais.

si te das cuenta los datos los recojo asi

Pais - Ciudad - Nombre
Peru - Lima - Jorge
Peru - Arequipa - Andres
Chile - Santiago - Juan
Brasil - Sao Pablo - Giovani

la impresion en el XSLT seria horizontal (Tal y como esta en el ejemplo) o seria vertical
voy a poner un ejemplo mas complicado

Imaginate que la tabla me llegue de la siguiente forma

Pais - Ciudad - Nombre
Peru - Lima - Jorge
Peru - Lima - Andres
Peru - Lima - Juan
Peru - Cusco- Anibal
Peru - Cusco- Rolando
Peru - Cusco- Jairo

Miremos el caso de PERU - yo no quiero repetir esa etiqueta yo quiero q cuando cambie de ciudad se imprima la ciudad correspondiente de la misma forma

Peru
Lima
Jorge
Andres
Juan
Cusco
Anibal
Rolando
Jairo

No logro hacer el quiebre pero me han dicho q si se puede, lo que me imagino en programacion seria

SI (Ciudad actual <> Ciudad Anterior)
Imprimo Nueva Ciudad
SINO
Imprimo el nombre actual

Si se puede me han dicho pero no tengo ni idea como se podria hacer.

Saludos
NOTA (El reporte consta de 7 mil registros y de ciudades y paises variables no es una consulta estatica).

Etiquetas: comparar, nodos, xml, xslt., xsl
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 09:29.