Re: Tabulacion en ireport
Calabaza <[email protected]>
| Newsgroups | gmane.comp.java.javaspain |
|---|---|
| Message-ID | <[email protected]> |
El día 24 de abril de 2009 16:25, esmeralda987 <esmeralda987-/[email protected]> escribió: > Hola, tengo la siguiente duda haber si me pueden ayudar. > Se puede hacer en ireport una "estructura de arbol" > automaticamente? (sin tener que poner difentes field > con distinta identacion). No se... > Por ejemplo > Node 1 > ---Node 1.1 > ---Node 1.2 > Node 2 > Node 3 > ---Node 3.1 > ------Node 3.1.1 > ------Node 3.1.2 > ---Node 3.2 > Lo unico que se me ocurre es poner varios field > pero no se en realidad cuantos niveles puedo llegar a tener > y esa solucion no me sirve. > Yo recibo una variable que indica el nivel al que debe > estar ese registro, > por ejemplo: nivel = 1, nivel = 2, etc.. > Alguien sabe como hacer esto? Yo lo haría con sql de esta forma: Primero mi motor de BD es: PostgreSQL 8.3.7 on i486-pc-linux-gnu, compiled by GCC gcc-4.3.real (Debian 4.3.3-5) 4.3.3 Luego este es el script de prueba que hice: CREATE TABLE prueba ( id serial NOT NULL, texto character varying(50), nivel integer, CONSTRAINT prueba_pkey PRIMARY KEY (id) ) WITH (OIDS=FALSE); ALTER TABLE prueba OWNER TO calabaza; Estos son los datos que tiene cargado: Select * from prueba; 2;"nodo 2";1 1;"nodo 1";1 3;"nodo 3";1 4;"nodo 1.1";2 5;"nodo 1.2";2 6;"nodo 3.1";2 7;"nodo 3.2";2 8;"nodo 3.1.1";3 9;"nodo 3.1.2";3 Y este select puedes usar para tu reporte: SELECT id, repeat(' '::text, nivel)||''||texto as texto_identado, nivel FROM prueba order by texto; Y para que salga bien, en tu reporte debes usar una fuente de ancho fijo. > Muchas gracias, Esmeralda Por nada. Exitos. -- §~^Calabaza^~§ from Villa Elisa, Paraguay