Domanda

Hai mai avuto colori di sfondo alternati in un rapporto Jasper e poi esportato in Excel? L'esportazione di Excel sembra ignorare il colore alternato.

Ho un rapporto Jasper in cui le righe alternano il colore di sfondo usando la procedura a cui si fa riferimento QUI . Quando lo visualizzo in anteprima utilizzando il visualizzatore o l'esportazione in PDF funziona, ma non quando esporto in Excel. Ho provato a usare JRXlsExporter e JExcelApiExporter senza risultati.

Penso che potrebbe essere un effetto collaterale del modo in cui devi alternare i colori delle righe in Jasper, che io disprezzo per cominciare, ma non ho trovato altro modo.

Grazie in anticipo!

È stato utile?

Soluzione

Hai provato l'idea suggerita nel commento della stessa procedura a cui ti riferisci?

Prima di tutto come creare un nuovo stile di report con condizione:

  

Le versioni recenti di JasperReports includono stili di report, che lo rendono un po 'più semplice: non è più necessario creare il rettangolo.

     

Uso iReport per creare i miei stili - c'è uno stile di & # 8220; & # 8221; riquadro che per impostazione predefinita è ancorato con & # 8220; Library & # 8221; riquadro. Se lo rendi visibile puoi creare un nuovo stile nella libreria degli stili. Nella schermata che appare, assegna allo stile un nome (dì & # 8220; EvenOddRowStyle & # 8221; e premi & # 8220; Aggiungi & # 8221; sotto & # 8220; Condizioni di stile & # 8221 ;. Usa una delle espressioni che Brian ha dato e premi Applica. e nella sezione & # 8220; Comune & # 8221; premi il pulsante & # 8220; & # 8230; & # 8221; accanto a & # 8220; Backcolor & # 8221; e scegli il colore di sfondo che desideri. Infine , una volta terminato il rapporto, applica quello stile a tutti i campi nelle righe che desideri evidenziare. Basta trascinare lo stile dal riquadro degli stili sul campo.

Quindi come definire uno stile che verrà applicato quando esportato in Excel:

  

definendo un nuovo stile con l'espressione condition:

Boolean.valueOf( $V{PAGE_COUNT}.intValue() % 2 == 0 )
  

su di esso senza usare un rettangolo e una stampa quando un'espressione su di esso !

Altri suggerimenti

Inoltre, assicurati che gli stili condizionali che crei abbiano l'opzione "opaca" opzione selezionata ... In caso contrario, il colore di sfondo non verrà mai visualizzato nel rapporto Excel (mai !!!) ....

Inoltre, il "opaco" l'opzione deve essere selezionata nei campi di testo ....

E se hai notato che i campi di testo non hanno mai preso lo stile che hai dato loro, prova a impostare il forecolor e lo sfondo su null, nel pannello delle proprietà di ogni campo di testo (questo funziona per me) ...

Spero che questo aiuto ... ciao.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top