Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027

    XSL:fo e footer tabella

    Ciao, mi trovo a lavorare per la prima volta con xsl:fo, quindi abbiate pazienza.

    In qualche modo copiando un xsl esistente sono riuscito a creare una fattura.

    Per il dettaglio fattura ho costrutito una tabella con diverse colonne, e con un numero fisso di righe per pagina.

    Il problema è che pensavo di usare
    codice:
    <fo:table-footer>
    </fo:table-footer>
    per mostrare il totale della fattura solo in ultima pagina (cioè solo a fine tabella secondo il mio punto di vista), invece viene mostrato a fine tabella in ogni pagina...

    come procedere?

    grazie

  2. #2
    Utente di HTML.it L'avatar di Polley
    Registrato dal
    Jan 2005
    Messaggi
    696
    con cosa fai la trasformazione in pdf ?

  3. #3
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    con fop e java.

    Il problema l'ho risolto mettendo un marker dopo il tag di chiusura della tabella.

    Il problema successivo è stato fare in modo che il totale risultasse sempre alla stessa altezza visto che se l'ultima pagina aveva 1 o 3 righe nella tabella questo si alzava.

    Questo problema l'ho risolto creando un blocco con space-after variabile dopo la tabella e passando dinamicamente l'altezza...

    Ma non mi piace molto come soluzione... se avete suggerimenti ditemi pure

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    3

    fo: marker

    ciao,

    da poco sto utilizzando fop per generare una fattura e mi sto scontrando con la problematica dei totali di chiusura. Ho letto che tu avevi trovato una soluzione al problema. Se non ti e di disturbo potresti cortesemente farmi un esempio?
    Grazie

  5. #5
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    la soluzione definitiva adottata è proprio quella che dicevo nell'ultimo messaggio.

    In pratica a fop nell'xml oltre ad arrivare i dati della fattura metto anche l'altezza dello space-after della tabella delle singole voci della fattura.
    In pratica sapendo che ogni pagina della fattura ha al massimo 3 righe mi calcolo quante righe ci sono nell'ultima pagina prendendo il resto della divisione tra il numero delle righe per 3.
    Poi moltiplico l'altezza della riga per il numero di righe necessarie per arrivare a 3.

    In pratica.
    Immagina di avere una fattura con 4 righe.
    Ogni pagina tiene 3 righe, quindi nell'ultima pagina ci sarà 1 riga, e quindi per ottenere lo spaziatore finale moltiplico l'altezza della riga per 3-1.

    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    3

    fop marker

    Il tuo esempio mi è chiaro ma dove hai messo il marker ?
    Non riesco bene a capire come funziona questa istruzione.

  7. #7
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    guarda a dire il vero credo che il marker fosse un di più non necessario.

    Se tu nel body content dopo la chiusura della tabella metti un altra tabella questa verrà disegnata solo dopo la chisura della precedente, quindi verrà mostrata solo alla fine.
    La tabella del dettaglio è una sola e viene chiusa solo quando finiscono gli elementi, quindi in ultima pagina.

    ciao

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    3
    Grazie per la dritta.

    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.