# Elementi dei modelli KugarTemplate

Nomi di sezione | Elementi di sezione
`ReportHeader` | `Line`
`PageHeader` | `Label`
`DetailHeader` | `Field`
`Detail` | `CalculatedField`
`DetailFooter` | `Special`
`PageFooter` | Piè di pagina
`ReportFooter` | Piè di pagina del rapporto

## Le sezioni `ReportHeader` e `ReportFooter`

Gli elementi `ReportHeader` e `ReportFooter` definiscono le sezioni del rapporto che sono normalmente stampate all'inizio e alla fine del rapporto.

    <!ELEMENT ReportHeader (Line*, Label*, Special*)>
    <!ATTLIST ReportHeader
         Height          CDATA #REQUIRED
         PrintFrequency  CDATA #REQUIRED>

    <!ELEMENT ReportFooter (Line*, Label*, Special*, CalculatedField*)>
    <!ATTLIST ReportFooter
         Height         CDATA #REQUIRED
         PrintFrequency CDATA #REQUIRED>

Attributi

- `Height`

- Imposta l'altezza della sezione del rapporto. Se non lo vuoi, la sezione imposta questo valore a `0`.

`PrintFrequency`

- Imposta la frequenza di stampa della sezione.

  Valore | Frequenza di stampa
  `0` | Prima pagina
  `1` | Ogni pagina
  `2` | Ultima pagina

## Sezioni `PageHeader` e `PageFooter`

Gli elementi `PageHeader` e `PageFooter` definiscono le sezioni del rapporto che sono normalmente stampate su ogni pagina del rapporto.

    <!ELEMENT PageHeader (Line*, Label*, Special*)>
    <!ATTLIST PageHeader
         Height          CDATA #REQUIRED
         PrintFrequency  CDATA #REQUIRED>

    <!ELEMENT PageFooter (Line*, Label*, Special*)>
    <!ATTLIST PageFooter
         Height          CDATA #REQUIRED
         PrintFrequency  CDATA #REQUIRED>

Attributi

- `Height`

- Imposta l'altezza della sezione del rapporto. Se non lo vuoi, la sezione imposta questo valore a `0`.

`PrintFrequency`

- Imposta la frequenza di stampa della sezione.

  Valore | Frequenza di stampa
  `0` | Prima pagina
  `1` | Ogni pagina
  `2` | Ultima pagina

## Le sezioni `DetailHeader` e `DetailFooter`

Gli elementi `DetailHeader` e `DetailFooter` definiscono le sezioni del rapporto che sono stampate prima e dopo i dettagli da un certo livello in giù sul rapporto.

    <!ELEMENT DetailHeader (Line*, Label*, Special*)>
    <!ATTLIST DetailHeader
         Height          CDATA #REQUIRED
         Level           CDATA #REQUIRED>

    <!ELEMENT DetailFooter (Line*, Label*, Special*)>
    <!ATTLIST DetailFooter
         Height          CDATA #REQUIRED
         Level           CDATA #REQUIRED>

Attributi

- `Height`

- Imposta l'altezza della sezione del rapporto. Se non lo vuoi, la sezione imposta questo valore a `0`.

`Level`

- Imposta il livello di gerarchia della sezione. Le sezioni con livelli maggiori saranno stampate prima di sezioni con livelli minori. Il livello può essere un numero qualsiasi a cominciare da 0.

## La sezione `Detail`

L'elemento `Detail` definisce la sezione del rapporto che contiene i dati del rapporto. Il rapporto può avere dettagli multipli, cui accede dall'attributo Level del dettaglio.

    <!ELEMENT Detail (Line*, Label*, Special*, Field*)>
    <!ATTLIST Detail
         Height  CDATA   #REQUIRED
         Level   CDATA   #REQUIRED>

Attributi

- `Height`

- Imposta l'altezza della sezione del rapporto. Se non lo vuoi, la sezione imposta questo valore a `0`.

`Level`

- Imposta il livello di gerarchia della sezione. Le sezioni con livello maggiore saranno stampate prima delle sezioni con livello minore. Level può essere un qualsiasi numero a cominciare da 0. È un attributo da un elemento `row` in un file dati.

## `Line`

L'elemento `Line` definisce un oggetto del rapporto usato per disegnare linee su un rapporto.

    <!ELEMENT Line EMPTY>
    <!ATTLIST Line
         X1     CDATA #REQUIRED
         Y1     CDATA #REQUIRED
         X2     CDATA #REQUIRED
         Y2     CDATA #REQUIRED
         Width  CDATA #REQUIRED
         Color  CDATA #REQUIRED
         Style  CDATA #REQUIRED>

Attributi

- `X1`

- Imposta la coordinata X iniziale (relativamente all'angolo in alto a sinistra della sezione) della linea.

`Y1`

- Imposta la coordinata Y iniziale (relativamente all'angolo in alto a sinistra della sezione) della linea.

`X2`

- Imposta la coordinata X finale (relativamente all'angolo in alto a sinistra della sezione) della linea.

`Y2`

- Imposta la coordinata Y finale (relativamente all'angolo in alto a sinistra della sezione) della linea.

`Width`

- Imposta la larghezza della linea.

`Color`

- Imposta il colore della linea. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`Style`

- Imposta lo stile di disegno della linea.

  Valore | Stile della linea
  `0` | Nessuno
  `1` | Solido
  `2` | Trattini
  `3` | Puntini
  `4` | Tratto e punto
  `5` | Tratto e due punti

## `Label`

L'elemento `Label` definisce un oggetto del rapporto usato per disegnare testo fisso su un rapporto.

    <!ELEMENT Label EMPTY>
     <!ATTLIST Label
         Text            CDATA #REQUIRED
         X               CDATA #REQUIRED
         Y               CDATA #REQUIRED
         Width           CDATA #REQUIRED
         Height          CDATA #REQUIRED
         BackgroundColor CDATA #REQUIRED
         ForegroundColor CDATA #REQUIRED
         BorderColor     CDATA #REQUIRED
         BorderWidth     CDATA #REQUIRED
         BorderStyle     CDATA #REQUIRED
         FontFamily      CDATA #REQUIRED
         FontSize        CDATA #REQUIRED
         FontWeight      CDATA #REQUIRED
         FontItalic      CDATA #REQUIRED
         HAlignment      CDATA #REQUIRED
         VAlignment      CDATA #REQUIRED
         WordWrap        CDATA #REQUIRED>

Attributi

- `Text`

- Imposta il testo dell'etichetta.

`X`

- Imposta la coordinata X (relativamente all'angolo in alto a sinistra) per il posizionamento dell'etichetta.

`Y`

- Imposta la coordinata Y (relativamente all'angolo in alto a sinistra) per il posizionamento dell'etichetta.

`Width`

- Imposta la larghezza dell'etichetta.

`Height`

- Imposta l'altezza dell'etichetta.

`BackgroundColor`

- Imposta il colore di sfondo dell'etichetta. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`ForegroundColor`

- Imposta il colore di primo piano dell'etichetta. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderColor`

- Imposta il colore del bordo dell'etichetta. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderWidth`

- Imposta l'ampiezza del bordo dell'etichetta.

`BorderStyle`

- Imposta lo stile del bordo dell'etichetta.

  Valore | Stile del bordo
  `0` | Nessuno
  `1` | Solido
  `2` | Trattini
  `3` | Puntini
  `4` | Tratto e punto
  `5` | Tratto e due punti

`FontFamily`

- Imposta la famiglia dei caratteri del testo dell'etichetta.

`FontSize`

- Imposta la dimensione dei caratteri per il testo dell'etichetta.

`FontWeight`

- Imposta il peso dei caratteri per il testo dell'etichetta.

  Valore | Peso dei caratteri
  `25` | Leggero
  `50` | Normale
  `63` | Mezzo grassetto
  `75` | Grassetto
  `87` | Nero

`FontItalic`

- Imposta il flag corsivo dei caratteri per il testo dell'etichetta.

  Valore | Corsivo
  `0` | Falso
  `1` | Vero

`HAlignment`

- Imposta l'allineamento orizzontale del testo dell'etichetta.

  Valore | Allineamento orizzontale
  `0` | Sinistra
  `1` | Centro
  `2` | Destra

`VAlignment`

- Imposta l'allineamento verticale del testo dell'etichetta.

  Valore | Allineamento verticale
  `0` | Alto
  `1` | Centro
  `2` | Basso

`WordWrap`

- Imposta il flag di ritorno a capo automatico per il testo dell'etichetta.

  Valore | A capo automatico
  `0` | Falso
  `1` | Vero

## `Field`

L'elemento `Field` definisce un oggetto del rapporto usato per disegnare dati sul rapporto.

    <!ELEMENT Field EMPTY>
    <!ATTLIST Field
         Field           CDATA #REQUIRED
         Text            CDATA #REQUIRED
         X               CDATA #REQUIRED
         Y               CDATA #REQUIRED
         Width           CDATA #REQUIRED
         Height          CDATA #REQUIRED
         BackgroundColor CDATA #REQUIRED
         ForegroundColor CDATA #REQUIRED
         BorderColor     CDATA #REQUIRED
         BorderWidth     CDATA #REQUIRED
         BorderStyle     CDATA #REQUIRED
         FontFamily      CDATA #REQUIRED
         FontSize        CDATA #REQUIRED
         FontWeight      CDATA #REQUIRED
         FontItalic      CDATA #REQUIRED
         HAlignment      CDATA #REQUIRED
         VAlignment      CDATA #REQUIRED
         WordWrap        CDATA #REQUIRED
         DataType        CDATA #REQUIRED
         DateFormat      CDATA #REQUIRED
         Precision       CDATA #REQUIRED
         Currency        CDATA #REQUIRED
         NegValueColor   CDATA #REQUIRED
         CommaSeparator  CDATA #REQUIRED>

Attributi

- `Field`

- Imposta il campo dati per l'oggetto. Questo è un attributo da un elemento `row` in un file dati.

`Text`

- Non usato.

`X`

- Imposta la coordinata X (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Y`

- Imposta la coordinata Y (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Width`

- Imposta la larghezza del campo.

`Height`

- Imposta l'altezza del campo.

`BackgroundColor`

- Imposta il colore di sfondo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`ForegroundColor`

- Imposta il colore di primo piano del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderColor`

- Imposta il colore del bordo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderWidth`

- Imposta la larghezza del bordo del campo.

`BorderStyle`

- Imposta lo stile del bordo del campo.

  Valore | Stile del bordo
  `0` | Nessuno
  `1` | Solido
  `2` | Trattini
  `3` | Puntini
  `4` | Tratto e punto
  `5` | Tratto e due punti

`FontFamily`

- Imposta la famiglia dei caratteri per il campo.

`FontSize`

- Imposta la dimensione dei caratteri per il campo.

`FontWeight`

- Imposta il peso dei caratteri per il campo.

  Valore | Peso dei caratteri
  `25` | Leggero
  `50` | Normale
  `63` | Mezzo grassetto
  `75` | Grassetto
  `87` | Nero

`FontItalic`

- Imposta il flag corsivo per il testo del campo.

  Valore | Corsivo
  `0` | Falso
  `1` | Vero

`HAlignment`

- Imposta l'allineamento orizzontale del testo del campo.

  Valore | Allineamento orizzontale
  `0` | Sinistra
  `1` | Centro
  `2` | Destra

`VAlignment`

- Imposta l'allineamento verticale del testo del campo

  Valore | Allineamento verticale
  `0` | Alto
  `1` | Centro
  `2` | Basso

`WordWrap`

- Imposta il flag di ritorno a capo automatico per il testo del campo.

  Valore | A capo automatico
  `0` | Falso
  `1` | Vero

`DataType`

- Imposta il tipo di dati del campo.

  Valore | Tipo di dati
  `0` | Stringa
  `1` | Intero
  `2` | Razionale
  `3` | Data
  `4` | Valuta

`DateFormat`

- Imposta il formato della data del campo. Perché funzioni, il formato della data dal documento dei dati deve essere nel formato mm/gg/aaaa o mm-dd-aaaa, altrimenti il formato è usato della data originale. Se il tipo dati è diverso da una data, imposta a `0`.

  Valore | Formato della data
  `0` | m/g/aa
  `1` | m-g-aa
  `2` | mm/gg/aa
  `3` | mm-gg-aa
  `4` | m/g/aaaa
  `5` | m-g-aaaa
  `6` | mm/gg/aaaa
  `7` | mm-gg-aaaa
  `8` | aaaa/m/g
  `9` | aaaa-m-g
  `10` | gg.mm.aa
  `11` | gg.mm.aaaa

`Precisione`

- Imposta la precisione numerica del campo. Se il tipo di dati è diverso da un tipo numerico, imposta a 0.

`Currency`

- Imposta il simbolo di valuta del campo. Se il tipo di dati è diverso da valuta, imposta a `36` ($). Il valore è un numero rappresentante un carattere Unicode.

`NegValueColor`

- Imposta il colore per valori numerici negativi. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255. Se i dati sono di tipo diverso da numerico, imposta a 255,0,0.

`CommaSeparator`

- Imposta se sono usate le virgole per i campi numerici. Se il tipo di dati è diverso da numerico, imposta a `0`.

  Valore | Virgola di separazione
  `0` | Falso
  `1` | Vero

## `CalculatedField`

L'elemento `CalculatedField` definisce un oggetto del rapporto usato per disegnare valori calcolati su un rapporto.

    <!ELEMENT CalculatedField EMPTY>
    <!ATTLIST CalculatedField
         CalculationType CDATA #REQUIRED
         Field           CDATA #REQUIRED
         Text            CDATA #REQUIRED
         X               CDATA #REQUIRED
         Y               CDATA #REQUIRED
         Width           CDATA #REQUIRED
         Height          CDATA #REQUIRED
         BackgroundColor CDATA #REQUIRED
         ForegroundColor CDATA #REQUIRED
         BorderColor     CDATA #REQUIRED
         BorderWidth     CDATA #REQUIRED
         BorderStyle     CDATA #REQUIRED
         FontFamily      CDATA #REQUIRED
         FontSize        CDATA #REQUIRED
         FontWeight      CDATA #REQUIRED
         FontItalic      CDATA #REQUIRED
         HAlignment      CDATA #REQUIRED
         VAlignment      CDATA #REQUIRED
         WordWrap        CDATA #REQUIRED
         DataType        CDATA #REQUIRED
         DateFormat      CDATA #REQUIRED
         Precision       CDATA #REQUIRED
         Currency        CDATA #REQUIRED
         NegValueColor   CDATA #REQUIRED
         CommaSeparator  CDATA #REQUIRED>

Attributi

- `CalculationType`

- Imposta il tipo di calcolo del campo.

  Valore | Calcolo
  `0` | Conta
  `1` | Somma
  `2` | Media
  `3` | Varianza
  `4` | Deviazione standard

`Field`

- Imposta il campo dati per l'oggetto. Questo è un attributo da un elemento `row` in un file dati.

`Text`

- Non usato.

`X`

- Imposta la coordinata X (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Y`

- Imposta la coordinata Y (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Width`

- Imposta la larghezza del campo.

`Height`

- Imposta l'altezza del campo.

`BackgroundColor`

- Imposta il colore di sfondo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`ForegroundColor`

- Imposta il colore di primo piano del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderColor`

- Imposta il colore del bordo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderWidth`

- Imposta la larghezza del bordo del campo.

`BorderStyle`

- Imposta lo stile del bordo del campo.

  Valore | Stile del bordo
  `0` | Nessuno
  `1` | Solido
  `2` | Trattini
  `3` | Puntini
  `4` | Tratto e punto
  `5` | Tratto e due punti

`FontFamily`

- Imposta la famiglia dei caratteri per il campo.

`FontSize`

- Imposta la dimensione dei caratteri per il campo.

`FontWeight`

- Imposta il peso dei caratteri per il campo.

  Valore | Peso dei caratteri
  `25` | Leggero
  `50` | Normale
  `63` | Mezzo grassetto
  `75` | Grassetto
  `87` | Nero

`FontItalic`

- Imposta il flag corsivo per il testo del campo.

  Valore | Corsivo
  `0` | Falso
  `1` | Vero

`HAlignment`

- Imposta l'allineamento orizzontale del testo del campo.

  Valore | Allineamento orizzontale
  `0` | Sinistra
  `1` | Centro
  `2` | Destra

`VAlignment`

- Imposta l'allineamento verticale del testo del campo.

  Valore | Allineamento verticale
  `0` | Alto
  `1` | Centro
  `2` | Basso

`WordWrap`

- Imposta il flag di ritorno a capo automatico per il testo del campo.

  Valore | A capo automatico
  `0` | Falso
  `1` | Vero

`DataType`

- Imposta il tipo di dati del campo.

  Valore | Tipo di dati
  `0` | Stringa
  `1` | Intero
  `2` | Razionale
  `3` | Data
  `4` | Valuta

`DateFormat`

- Imposta il formato della data del campo. Perché funzioni, il formato della data dal documento dei dati deve essere nel formato mm/gg/aaaa o mm-dd-aaaa, altrimenti il formato è usato della data originale. Se il tipo dati è diverso da una data, imposta a `0`.

  Valore | Formato della data
  `0` | m/g/aa
  `1` | m-g-aa
  `2` | mm/gg/aa
  `3` | mm-gg-aa
  `4` | m/g/aaaa
  `5` | m-g-aaaa
  `6` | mm/gg/aaaa
  `7` | mm-gg-aaaa
  `8` | aaaa/m/g
  `9` | aaaa-m-g
  `10` | gg.mm.aa
  `11` | gg.mm.aaaa

`Precisione`

- Imposta la precisione numerica del campo. Se il tipo di dati è diverso da un tipo numerico, imposta a 0.

`Currency`

- Imposta il simbolo di valuta del campo. Se il tipo di dati è diverso da valuta, imposta a `36` ($). Il valore è un numero rappresentante un carattere Unicode.

`NegValueColor`

- Imposta il colore per valori numerici negativi. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255. Se i dati sono di tipo diverso da numerico, imposta a 255,0,0.

`CommaSeparator`

- Imposta se sono usate le virgole per i campi numerici. Se il tipo di dati è diverso da numerico, imposta a `0`.

  Valore | Virgola di separazione
  `0` | Falso
  `1` | Vero

## `Special`

L'elemento `Special` definisce un oggetto del rapporto usato per disegnare i numeri di pagina e la data corrente su un rapporto.

    <!ELEMENT Special EMPTY>
    <!ATTLIST Special
         Type            CDATA #REQUIRED
         Text            CDATA #REQUIRED
         X               CDATA #REQUIRED
         Y               CDATA #REQUIRED
         Width           CDATA #REQUIRED
         Height          CDATA #REQUIRED
         BackgroundColor CDATA #REQUIRED
         ForegroundColor CDATA #REQUIRED
         BorderColor     CDATA #REQUIRED
         BorderWidth     CDATA #REQUIRED
         BorderStyle     CDATA #REQUIRED
         FontFamily      CDATA #REQUIRED
         FontSize        CDATA #REQUIRED
         FontWeight      CDATA #REQUIRED
         FontItalic      CDATA #REQUIRED
         HAlignment      CDATA #REQUIRED
         VAlignment      CDATA #REQUIRED
         WordWrap        CDATA #REQUIRED
         DateFormat      CDATA #REQUIRED>

Attributi

- `Type`

- Imposta il tipo dell'oggetto speciale.

  Valore | Tipo
  `0` | Data corrente
  `1` | Numero di pagina

`Text`

- Non usato.

`X`

- Imposta la coordinata X (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Y`

- Imposta la coordinata Y (relativamente all'angolo in alto a sinistra della sezione) per posizionare il campo.

`Width`

- Imposta la larghezza del campo.

`Height`

- Imposta l'altezza del campo.

`BackgroundColor`

- Imposta il colore di sfondo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`ForegroundColor`

- Imposta il colore di primo piano del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderColor`

- Imposta il colore del bordo del campo. Il colore è definito come valore RGB (Rosso, Verde e Blu) (r,g,b). r, g e b devono essere nell'intervallo tra 0 e 255.

`BorderWidth`

- Imposta la larghezza del bordo del campo.

`BorderStyle`

- Imposta lo stile del bordo del campo.

  Valore | Stile del bordo
  `0` | Nessuno
  `1` | Solido
  `2` | Trattini
  `3` | Puntini
  `4` | Tratto e punto
  `5` | Tratto e due punti

`FontFamily`

- Imposta la famiglia dei caratteri per il campo.

`FontSize`

- Imposta la dimensione dei caratteri per il campo.

`FontWeight`

- Imposta il peso dei caratteri per il campo.

  Valore | Peso dei caratteri
  `25` | Leggero
  `50` | Normale
  `63` | Mezzo grassetto
  `75` | Grassetto
  `87` | Nero

`FontItalic`

- Imposta il flag corsivo per il testo del campo.

  Valore | Corsivo
  `0` | Falso
  `1` | Vero

`HAlignment`

- Imposta l'allineamento orizzontale del testo del campo.

  Valore | Allineamento orizzontale
  `0` | Sinistra
  `1` | Centro
  `2` | Destra

`VAlignment`

- Imposta l'allineamento verticale del testo del campo.

  Valore | Allineamento verticale
  `0` | Alto
  `1` | Centro
  `2` | Basso

`WordWrap`

- Imposta il flag di ritorno a capo automatico per il testo del campo.

  Valore | A capo automatico
  `0` | Falso
  `1` | Vero

`DateFormat`

- Imposta il formato della data del campo. Perché funzioni, il formato della data dal documento dei dati deve essere nel formato mm/gg/aaaa o mm-dd-aaaa, altrimenti il formato è usato della data originale. Se il tipo dati è diverso da una data, imposta a `0`.

  Valore | Formato della data
  `0` | m/g/aa
  `1` | m-g-aa
  `2` | mm/gg/aa
  `3` | mm-gg-aa
  `4` | m/g/aaaa
  `5` | m-g-aaaa
  `6` | mm/gg/aaaa
  `7` | mm-gg-aaaa
  `8` | aaaa/m/g
  `9` | aaaa-m-g
  `10` | gg.mm.aa
  `11` | gg.mm.aaaa

`Precisione`

- Imposta la precisione numerica del campo. Se il tipo di dati è diverso da un tipo numerico, imposta a 0.