# Elementos de modelo KugarTemplate

Bandas de seção | Elementos de seção
`ReportHeader` | `Line`
`PageHeader` | `Label`
`DetailHeader` | `Field`
`Detail` | `CalculatedField`
`DetailFooter` | `Special`
`PageFooter` | Rodapé da Página
`ReportFooter` | Rodapé do Relatório

## Seções `ReportHeader` e `ReportFooter`

Os elementos `ReportHeader` e `ReportFooter` definem seções do relatório que são comumente impressas no início e fim do relatório.

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

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

Atributos

- `Height`

- Configura a altura da seção do relatório. Se você não deseja esta seção, configure o valor `0`.

`PrintFrequency`

- Configura a frequência de impressão da seção.

  Valor | Frequência de Impressão
  `0` | Primeira Página
  `1` | Cada Página
  `2` | Última Página

## Seções `PageHeader` e `PageFooter`

Os elementos `PageHeader` e `PageFooter` definem seções do relatório que são comumente usadas impressas em cada página do relatório.

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

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

Atributos

- `Height`

- Configura a altura da seção do relatório. Se você não deseja esta seção, configure o valor `0`.

`PrintFrequency`

- Configura a frequência de impressão da seção.

  Valor | Frequência de Impressão
  `0` | Primeira Página
  `1` | Cada Página
  `2` | Última Página

## Seções `DetailHeader` e `DetailFooter`

Os elementos `DetailHeader` e `DetailFooter` definem seções do relatório que são impressas antes e após os detalhes do nível fornecido e abaixo do relatório.

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

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

Atributos

- `Height`

- Configura a altura da seção do relatório. Se você não deseja esta seção, configure o valor `0`.

`Level`

- Configura o nível na hierarquia da seção. Seções com níveis superiores serão impressas antes de seções com níveis inferiores. O nível pode ser qualquer número a partir de 0.

## Seção `Detail`

O elemento `Detail` define a seção do relatório que contém os dados do relatório. O relatório pode possuir múltiplos detalhes, que são acessados pelo seu atributo nível de detalhe.

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

Atributos

- `Height`

- Configura a altura da seção do relatório. Se você não deseja esta seção, configure o valor `0`.

`Level`

- Configura o nível hierárquico da seção. As seções com níveis superior serão impressas antes das seções com níveis inferiores. O nível pode ser qualquer número a partir de 0. Isto é um atributo do elemento `row` no arquivo de dados.

## `Line`

O elemento `Line` define um objeto de relatório usado para desenhar linhas no relatório.

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

Atributos

- `X1`

- Configura a coordenada x de início (relativa ao canto superior esquerdo da seção) para a linha.

`Y1`

- Configura a coordenada y de início (relativa ao canto superior esquerdo da seção) para a linha.

`X2`

- Configura a coordenada x final (relativa ao canto superior esquerdo da seção) para a linha.

`Y2`

- Configura a coordenada y final (relativa ao canto superior esquerdo da seção) para a linha.

`Width`

- Configura a largura da linha.

`Color`

- Configura a cor da linha. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`Style`

- Configura o estilo de desenho para a linha.

  Valor | Estilo de Linha
  `0` | Sem Caneta
  `1` | Sólida
  `2` | Tracejada
  `3` | Pontilhada
  `4` | Traço Ponto
  `5` | Traço Ponto Ponto

## `Label`

O elemento `Label` define um objeto do relatório usado para desenhar texto fixo de um relatório.

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

Atributos

- `Text`

- Configura o texto do rótulo.

`X`

- Configura a coordenada x (relativa ao canto superior esquerdo da seção) para posicionar o rótulo.

`Y`

- Configura a coordenada y (relativa ao canto superior esquerdo da seção) para posicionar o rótulo.

`Width`

- Configura a largura do rótulo.

`Height`

- Configura a altura do rótulo.

`BackgroundColor`

- Configura a cor do fundo do rótulo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`ForegroundColor`

- Configura a cor do texto do rótulo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderColor`

- Configura a cor da borda do rótulo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderWidth`

- Configura a espessura da borda do rótulo.

`BorderStyle`

- Configura o estilo da borda para o rótulo.

  Valor | Estilo de Borda
  `0` | Nenhum
  `1` | Sólida
  `2` | Tracejada
  `3` | Pontilhada
  `4` | Traço Ponto
  `5` | Traço Ponto Ponto

`FontFamily`

- Configura o tipo de fonte para o texto do rótulo.

`FontSize`

- Configura o tamanho da fonte para o texto do rótulo.

`FontWeight`

- Configura o peso da fonte para o texto do rótulo.

  Valor | Peso da Fonte
  `25` | Leve
  `50` | Normal
  `63` | Semi Negrito
  `75` | Negrito
  `87` | Negro

`FontItalic`

- Configura o sinalizador de itálico para o texto do rótulo.

  Valor | Itálico
  `0` | Falso
  `1` | Verdadeiro

`HAlignment`

- Configura o alinhamento horizontal do texto do rótulo.

  Valor | Alinhamento Horizontal
  `0` | Esquerdo
  `1` | Centralizado
  `2` | Direito

`VAlignment`

- Configura o alinhamento vertical do texto do rótulo.

  Valor | Alinhamento Vertical
  `0` | Topo
  `1` | Meio
  `2` | Inferior

`WordWrap`

- Configura o sinalizador de quebra de linha para o texto do rótulo.

  Valor | Quebra de Linha
  `0` | Falso
  `1` | Verdadeiro

## `Field`

O elemento `Field` define um objeto de relatório usado para desenhar dados no relatório.

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

Atributos

- `Field`

- Configura o campo de dados do objeto. Isto é um atributo do elemento `row` no arquivo de dados.

`Text`

- Não usado.

`X`

- Configura a coordenada x (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Y`

- Configura a coordenada y (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Width`

- Configura a largura do campo.

`Height`

- Configura a altura do campo.

`BackgroundColor`

- Configura a cor de fundo do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`ForegroundColor`

- Configura a cor do texto do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderColor`

- Configura a cor da borda do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderWidth`

- Configura a espessura da borda para o campo.

`BorderStyle`

- Configura o estilo da borda para o campo.

  Valor | Estilo de Borda
  `0` | Nenhum
  `1` | Sólida
  `2` | Tracejada
  `3` | Pontilhada
  `4` | Traço Ponto
  `5` | Traço Ponto Ponto

`FontFamily`

- Configura o tipo de fonte para o texto do campo.

`FontSize`

- Configura o tamanho da fonte para o texto do campo.

`FontWeight`

- Configura o peso da fonte para o texto do campo.

  Valor | Peso da Fonte
  `25` | Leve
  `50` | Normal
  `63` | Semi Negrito
  `75` | Negrito
  `87` | Negro

`FontItalic`

- Configura o sinalizador de itálico para o texto do campo.

  Valor | Itálico
  `0` | Falso
  `1` | Verdadeiro

`HAlignment`

- Configura o alinhamento horizontal do texto do campo.

  Valor | Alinhamento Horizontal
  `0` | Esquerdo
  `1` | Centralizado
  `2` | Direito

`VAlignment`

- Configura o alinhamento vertical do texto do campo.

  Valor | Alinhamento Vertical
  `0` | Topo
  `1` | Meio
  `2` | Inferior

`WordWrap`

- Configura a quebra de linha para o texto do campo.

  Valor | Quebra de Linha
  `0` | Falso
  `1` | Verdadeiro

`DataType`

- Configura o tipo de dados do campo.

  Valor | Tipos de Dados
  `0` | String
  `1` | Inteiro
  `2` | Flutuante
  `3` | Data
  `4` | Monetário

`DateFormat`

- Configura o formato de data do campo. Para isto funcionar, o formato da data no documento de dados deve estar no formato mm/dd/aaaa ou mm-dd-aaaa; caso contrário o formato original de data é utilizado. Se o tipo de dados não for data, defina esta opção como `0`.

  Valor | Formato de Data
  `0` | m/d/aa
  `1` | m-d-aa
  `2` | mm/dd/aa
  `3` | mm-dd-aa
  `4` | m/d/aaaa
  `5` | m-d-aaaa
  `6` | mm/dd/aaaa
  `7` | mm-dd-aaaa
  `8` | aaaa/m/d
  `9` | aaaa-m-d
  `10` | dd.mm.aa
  `11` | dd.mm.aaaa

`Precision`

- Configura a precisão numérica do campo. Se o tipo de dados não é numérico, configure como 0.

`Monetário`

- Configura o símbolo monetário do campo. Se o tipo de dados não é monetário configure com o valor `36` ($). O valor é um número que representa um caracter Unicode.

`NegValueColor`

- Configura a cor para valores negativos. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255. Se o dado não for do tipo numérico, configure para 255,0,0.

`CommaSeparator`

- Configura se as virgulas serão usadas ou não nos campos numéricos. Se o tipo de dados não for numérico configure o valor `0`.

  Valor | Vírgula Separadora
  `0` | Falso
  `1` | Verdadeiro

## `CalculatedField`

O elemento `CalculatedField` define um objeto do relatório usado para desenhar valores calculados no relatório.

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

Atributos

- `CalculationType`

- Configura o tipo de cálculo para o campo.

  Valor | Cálculo
  `0` | Contar
  `1` | Somatório
  `2` | Média
  `3` | Variação
  `4` | Desvio Padrão

`Field`

- Configura o campo de dados do objeto. Isto é um atributo do elemento `row` no arquivo de dados.

`Text`

- Não usado.

`X`

- Configura a coordenada x (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Y`

- Configura a coordenada y (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Width`

- Configura a largura do campo.

`Height`

- Configura a altura do campo.

`BackgroundColor`

- Configura a cor de fundo do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`ForegroundColor`

- Configura a cor do texto do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderColor`

- Configura a cor da borda do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderWidth`

- Configura a espessura da borda para o campo.

`BorderStyle`

- Configura o estilo da borda para o campo.

  Valor | Estilo de Borda
  `0` | Nenhum
  `1` | Sólida
  `2` | Tracejada
  `3` | Pontilhada
  `4` | Traço Ponto
  `5` | Traço Ponto Ponto

`FontFamily`

- Configura o tipo de fonte para o texto do campo.

`FontSize`

- Configura o tamanho da fonte para o texto do campo.

`FontWeight`

- Configura o peso da fonte para o texto do campo.

  Valor | Peso da Fonte
  `25` | Leve
  `50` | Normal
  `63` | Semi Negrito
  `75` | Negrito
  `87` | Negro

`FontItalic`

- Configura o sinalizador de itálico para o texto do campo.

  Valor | Itálico
  `0` | Falso
  `1` | Verdadeiro

`HAlignment`

- Configura o alinhamento horizontal do texto do campo.

  Valor | Alinhamento Horizontal
  `0` | Esquerdo
  `1` | Centralizado
  `2` | Direito

`VAlignment`

- Configura o alinhamento vertical do texto do campo.

  Valor | Alinhamento Vertical
  `0` | Topo
  `1` | Meio
  `2` | Inferior

`WordWrap`

- Configura a quebra de linha para o texto do campo.

  Valor | Quebra de Linha
  `0` | Falso
  `1` | Verdadeiro

`DataType`

- Configura o tipo de dados do campo.

  Valor | Tipos de Dados
  `0` | String
  `1` | Inteiro
  `2` | Flutuante
  `3` | Data
  `4` | Monetário

`DateFormat`

- Configura o formato de data do campo. Para isto funcionar, o formato da data no documento de dados deve estar no formato mm/dd/aaaa ou mm-dd-aaaa; caso contrário o formato original de data é utilizado. Se o tipo de dados não for data, defina esta opção como `0`.

  Valor | Formato de Data
  `0` | m/d/aa
  `1` | m-d-aa
  `2` | mm/dd/aa
  `3` | mm-dd-aa
  `4` | m/d/aaaa
  `5` | m-d-aaaa
  `6` | mm/dd/aaaa
  `7` | mm-dd-aaaa
  `8` | aaaa/m/d
  `9` | aaaa-m-d
  `10` | dd.mm.aa
  `11` | dd.mm.aaaa

`Precision`

- Configura a precisão numérica do campo. Se o tipo de dados não é numérico, configure como 0.

`Monetário`

- Configura o símbolo monetário do campo. Se o tipo de dados não é monetário configure o valor `36` ($). O valor é um número que representa um caracter Unicode.

`NegValueColor`

- Configura a cor para valores negativos. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255. Se o dado não for do tipo numérico, configure para 255,0,0.

`CommaSeparator`

- Configura se as virgulas serão usadas ou não nos campos numéricos. Se o tipo de dados não for numérico configure o valor `0`.

  Valor | Vírgula Separadora
  `0` | Falso
  `1` | Verdadeiro

## `Special`

O elemento `Special` define um objeto do relatório usado para desenhar números de página e a data atual no relatório.

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

Atributos

- `Tipo`

- Configura o tipo do objeto especial.

  Valor | Tipe
  `0` | Data Atual
  `1` | Número da Página

`Text`

- Não usado.

`X`

- Configura a coordenada x (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Y`

- Configura a coordenada y (relativa ao canto superior esquerdo da seção) para posicionar o campo.

`Width`

- Configura a largura do campo.

`Height`

- Configura a altura do campo.

`BackgroundColor`

- Configura a cor de fundo do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`ForegroundColor`

- Configura a cor do texto do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderColor`

- Configura a cor da borda do campo. A cor é definida como um valor RGB (Red Green Blue - Vermelho Verde Azul) (r,g,b). r, g e b devem estar no intervalo 0..255.

`BorderWidth`

- Configura a espessura da borda para o campo.

`BorderStyle`

- Configura o estilo da borda para o campo.

  Valor | Estilo de Borda
  `0` | Nenhum
  `1` | Sólida
  `2` | Tracejada
  `3` | Pontilhada
  `4` | Traço Ponto
  `5` | Traço Ponto Ponto

`FontFamily`

- Configura o tipo de fonte para o texto do campo.

`FontSize`

- Configura o tamanho da fonte para o texto do campo.

`FontWeight`

- Configura o peso da fonte para o texto do campo.

  Valor | Peso da Fonte
  `25` | Leve
  `50` | Normal
  `63` | Semi Negrito
  `75` | Negrito
  `87` | Negro

`FontItalic`

- Configura o sinalizador de itálico para o texto do campo.

  Valor | Itálico
  `0` | Falso
  `1` | Verdadeiro

`HAlignment`

- Configura o alinhamento horizontal do texto do campo.

  Valor | Alinhamento Horizontal
  `0` | Esquerdo
  `1` | Centralizado
  `2` | Direito

`VAlignment`

- Configura o alinhamento vertical do texto do campo.

  Valor | Alinhamento Vertical
  `0` | Topo
  `1` | Meio
  `2` | Inferior

`WordWrap`

- Configura a quebra de linha para o texto do campo.

  Valor | Quebra de Linha
  `0` | Falso
  `1` | Verdadeiro

`DateFormat`

- Configura o formato de data do campo. Para isto funcionar, o formato da data no documento de dados deve estar no formato mm/dd/aaaa ou mm-dd-aaaa; caso contrário o formato original de data é utilizado. Se o tipo de dados não for data, defina esta opção como `0`.

  Valor | Formato de Data
  `0` | m/d/aa
  `1` | m-d-aa
  `2` | mm/dd/aa
  `3` | mm-dd-aa
  `4` | m/d/aaaa
  `5` | m-d-aaaa
  `6` | mm/dd/aaaa
  `7` | mm-dd-aaaa
  `8` | aaaa/m/d
  `9` | aaaa-m-d
  `10` | dd.mm.aa
  `11` | dd.mm.aaaa

`Precision`

- Configura a precisão numérica do campo. Se o tipo de dados não é numérico, configure como 0.