Páginas filhas
  • TReport

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Obs.: Uma seção (TRSection) pode ser considerada um tópico dentro do relatório, podendo ter um ou mais tópicos que se relacionam no relatório.


Informações
titleImportante

A partir da Lib 20230220, a opção de impressão de planilha em formato xlsx passa gerar os dados de processamento no Banco de Dados ao invés de utilizar a memória do sistema, esta alteração visa solucionar problemas com alto consumo de memória.

Métodos:

Painel

AddBreak

Sintaxe
TReport():AddBreak( <oBreak> ) → NIL

Descrição
Adiciona a quebra de impressão na propriedade aBreak

Parâmetros

NomeTipoDescriçãoObrigatório
oBreakObjetoObjeto TRBreakX

...

Painel

GetParam

Sintaxe
TReport():GetParam( ) →

Descrição
Retorna a pergunta ou bloco de código utilizado como parâmetros do relatório

Painel
GetWidth

GetRightAlignPrinter

Sintaxe
TReport():GetWidthGetRightAlignPrinter( ) → lAlignPrinter

Descrição
Retorna a largura da páginase o alinhamento do relatório para células à direita está utilizando o componente do binário.

Retorno

lAlignPrinter

Aviso

Método disponível a partir da LIB Label 20211004

Painel

GetWidth

Sintaxe
TReport():GetWidth( ) →

Descrição
Retorna a largura da página

Painel
Painel

HideFooter

Sintaxe
TReport():HideFooter( ) →

Descrição
Define que não será impresso o rodapé padrão da página

...

Painel

LoadDefault

Sintaxe
TReport():LoadDefault( ) →

Descrição
Carrega o relatório padrão para personalização

Painel
LoadLayout

New


Sintaxe
TReport():LoadLayout( <cLayout> ) →
Descrição
Carrega um layout customizado para impressãoNew( <cReport> , <cTitle> , <uParam> , <bAction> , <cDescription> , <lLandscape> , <uTotalText> , <lTotalInLine> , <cPageTText> , <lPageTInLine> , <lTPageBreak> , <nColSpace> ) → oRet


Descrição
Método construtor da classe TReport

Parâmetros

NomeTipoDescriçãoObrigatório
cLayoutcReportCaracter

Layout a ser carregado

X
Painel

New

Sintaxe
TReport():New( <cReport> , <cTitle> , <uParam> , <bAction> , <cDescription> , <lLandscape> , <uTotalText> , <lTotalInLine> , <cPageTText> , <lPageTInLine> , <lTPageBreak> , <nColSpace> ) → oRet

Descrição
Método construtor da classe TReport
Parâmetros
NomeTipoDescriçãoObrigatório
cReportCaracter

Nome do relatório. Exemplo: MATR010

X
cTitleCaracterTítulo do relatório
uParamCaracter / Bloco de CódigoParâmetros do relatório cadastrado no Dicionário de Perguntas (SX1). Também pode ser utilizado bloco de código para parâmetros customizados
bActionBloco de CódigoBloco de código que será executado quando o usuário confirmar a impressão do relatório
cDescriptionCaracterDescrição do relatório
lLandscapeLógicoAponta a orientação de página do relatório como paisagem
uTotalTextCaracter / Bloco de CódigoTexto do totalizador do relatório, podendo ser caracter ou bloco de código
lTotalInLineLógicoImprime as células em linha
cPageTTextCaracterTexto do totalizador da página
lPageTInLineLógicoImprime totalizador da página em linha
lTPageBreakLógicoQuebra página após a impressão do totalizador
nColSpaceNuméricoEspaçamento entre as colunas


Retorno
oRet - Objeto da classe TReport

...

Painel

PageTotalInLine

Sintaxe
TReport():PageTotalInLine( <lTotalInLine> ) →

Descrição
Define se o total da página será impresso em linha ou coluna

Parâmetros

NomeTipoDescriçãoObrigatório
lTotalInLineLógico

Se verdadeirofalso, será impresso em linha


Painel

PageTotalText

Sintaxe
TReport():PageTotalText( <cText> ) →

Descrição
Define o texto do totalizador da página

Parâmetros

NomeTipoDescriçãoObrigatório
cTextCaracter

Texto do totalizador da página


...

Painel

PrintGraphic

Sintaxe
TReport():PrintGraphic( ) →

Descrição
Imprime os gráficos do relatório de acordo com o componente TRCollection.

Painel

PrintHeader

Sintaxe
TReport():PrintHeader( <lHeaderSection> ,<lPage> ) →

Descrição
Imprime o cabeçalho padrão do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
lHeaderSectionLógico

Imprime cabeçalho da seção


lPageLógicoImprime Informações sobre a página, como por exemplo, número da página

...

Painel

Section

Sintaxe
TReport():Section( <uSection> ) →

Parâmetros

NomeTipoDescriçãoObrigatório
uSectionCaracter / Numérico

Tipo Caracter: Título da seção
Tipo Numérico: Índice da seção segundo a ordem de criação dos componentes TRSection

X


Descrição
Retorna objeto da classe TRSection (seção)

...

Painel

SetBorder

Sintaxe
TReport():SetBorder( <uBorder> , <nWeight> , <nColor> , <lHeader> ) →


Descrição
Define as bordas do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
uBorderCaracter / Numérico

Tipo Caracter: "TOP","BOTTOM","LEFT","RIGHT",”ALL”
Tipo Numérico: 1-Superior,2-Inferior,3-Esquerda,4-Direita,5-Todas

X
nWeightNuméricoCor da borda
nColor
NuméricoAponta se é borda de cabeçalho
lHeader
LógicoObjeto do tipo TRBorder
Painel

SetClrBack

Sintaxe
TReport():SetClrBack( <nClrBack> ) →


Descrição
Define a cor de fundo do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nClrBackNuméricoNúmero da cor de fundo no formato RGB
Painel

SetClrFore

Sintaxe
TReport():SetClrFore( <nClrFore> ) →


Descrição
Define a cor da fonte do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nClrFore
NuméricoNúmero da cor da fonte no formato RGBX
Painel

SetCol

Sintaxe
TReport():SetCol( <nCol> ) →


Descrição
Define a coluna de impressão

Parâmetros

NomeTipoDescriçãoObrigatório
nColNuméricoNúmero da coluna de impressãoX
Painel

SetColSpace

Sintaxe
TReport():SetColSpace( <nColSpace> , <lPixel> ) →


Descrição
Define o espaçamento entre as colunas

Parâmetros

NomeTipoDescriçãoObrigatório
nColSpaceNuméricoTamanho do espaçamentoX
lPixelLógicoAponta se o tamanho será calculado em pixelX
Painel

SetCustomText

Sintaxe
TReport():SetCustomText( <uCustomText> ) →


Descrição
Define que a impressão do cabeçalho padrão será customizado

Parâmetros

NomeTipoDescriçãoObrigatório
uCustomTextArray / Bloco de Código

Tipo Array: Array contendo a customização para impressão do cabeçalho padrão.
Elementos: 1=Texto a ser impresso, no qual, um elemento por linha. Existem algumas strings que pode auxiliar na criação do cabeçalho:
__NOLINEBREAK__ - Não quebra linha
__NOTRANSFORM__ - Imprime sem nenhum tratamento
__LOGOEMP__ - Imprime o logo da empresa
__FATLINE__ - Imprime um linha grossa
__THINLINE__ - Imprime uma linha fina

Tipo Bloco de Código: Contendo Informações para geração do array descrito acima


Painel

SetDescription

Sintaxe
TReport():SetDescription( <cDescription> ) →


Descrição
Define a descrição detalhada do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
cDescriptionCaracterDescrição do relatórioX
Painel

SetDevice

Sintaxe
TReport():SetDevice( <nDevice> ) →

Descrição
Define o tipo de impressão selecionado. Opções: 1-Arquivo,2-Impressora,3-Email,4-Planilha, 5-Html e 6-PDF

Parâmetros

NomeTipoDescriçãoObrigatório
nDevice
NuméricoTipo de impressão selecionadaX
Painel

SetDynamic

Sintaxe
TReport():SetDynamic( ) →

Descrição
Define que o relatório será do tipo dinâmico, no qual, permite imprimir as seções conforme a ordem de impressão selecionada

Painel

SetEdit

Sintaxe
TReport():SetEdit( <lEdit> ) →

Descrição
Define se o relatório poderá ser configurado pelo usuário no caso de verdadeiro

Parâmetros

NomeTipoDescriçãoObrigatório
lEditLógicoHabilita a personalização dos campos a imprimirX
Painel

SetEnvironment

Sintaxe
TReport():SetEnvironment( <nEnv> ) →

Descrição
Define o ambiente para impressão

Parâmetros

NomeTipoDescriçãoObrigatório
nEnvNuméricoAmbiente: 1-Server e 2-ClientX
Painel

SetFile

Sintaxe
TReport():SetFile( <cFile> ) →

Descrição
Define o nome do arquivo temporário utilizado para geração dos relatórios

Parâmetros

NomeTipoDescriçãoObrigatório
cFileCaracterNome do arquivo temporário
Painel

SetLandscape

Sintaxe
TReport():SetLandscape( ) →

Descrição
Define a orientação de página do relatório como Paisagem

Painel

SetLeftMargin

Sintaxe
TReport():SetLeftMargin( <nLeftMargin> ) →

Descrição
Define a margem à esquerda do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nLeftMarginNuméricoTamanho da margem à esquerdaX
Painel

SetLineHeight

Sintaxe
TReport():SetLineHeight( <nLineHeight> ) →

Descrição
Define a altura da linha na impressão

Parâmetros

NomeTipoDescriçãoObrigatório
nLineHeightNuméricoAltura da linhaX
Painel

Sintaxe
TReport():SetLogo( <cLogo> ) →

Descrição
Define o logo da empresa na impressão do cabeçalho padrão

Parâmetros

NomeTipoDescriçãoObrigatório
cLogoCaracterIndica o caminho para o arquivo de logoX
Painel

SetMeter

Sintaxe
TReport():SetMeter( <nTotal> ) →

Descrição
Define o limite da régua de progressão do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nTotalCaracterLimite da réguaX
Painel

SetMsgPrint

Sintaxe
TReport():SetMsgPrint( <cMsg> ) →

Descrição
Define a mensagem apresentada durante a geração do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
cMsgCaracterTexto da mensagemX
Painel

SetOnPageNumber

Sintaxe
TReport():SetOnPageNumber( <bOnNumberPage> ) →

Descrição
Define o bloco de código utilizado para manipular o número da página atual

Parâmetros

NomeTipoDescriçãoObrigatório
bOnNumberPageBloco de CódigoBlock para manipular numeração da página atualX
Painel

SetPageNumber

Sintaxe
TReport():SetPageNumber( <nPage> ) →

Descrição
Define o número da página atual

Parâmetros

NomeTipoDescriçãoObrigatório
nPageNuméricoNúmero da página atualX
Painel

SetPageFooter

Sintaxe
TReport():SetPageFooter( <nLinesFooter> , <bPageFooter> , <lFooterBefore> ) →

Descrição
Define o rodapé da página

Parâmetros

NomeTipoDescriçãoObrigatório
nLinesFooterNuméricoLinhas reservada para impressão do rodapéX
bPageFooterBloco de CódigoBloco de código utilizado para imprimir Informações customizadas, no qual, deverão ser utilizados métodos do TReport para impressão. Exemplo: Say, PrintTextX
lFooterBeforeLógicoImprime rodapé antes dos totalizadores
Painel

SetParam

Sintaxe
TReport():SetParam( <uParam> ) →

Descrição
Define os parâmetros que serão utilizados pelo usuário

Parâmetros

NomeTipoDescriçãoObrigatório
uParamCaracter / Bloco de CódigoParâmetros do relatório cadastrados no Dicionário de Perguntas (SX1). Também pode ser utilizado Bloco de Código para parâmetros customizados
Painel

SetPortrait

Sintaxe
TReport():SetPortrait( ) →

Descrição
Define orientação de página do relatório como retrato

Painel

SetPreview

Sintaxe
TReport():SetPreview( <lPreview> ) →

Descrição
Define se será apresentada a visualização do relatório antes da impressão física

Parâmetros

NomeTipoDescriçãoObrigatório
lPreviewLógicoSe verdadeiro, será apresentada a visualização antes da impressão
Painel

SetPxLeftMargin

Sintaxe
TReport():SetPxLeftMargin( <nPxLeftMargin> ) →

Descrição
Define a margem à esquerda em pixel do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nPxLeftMarginNuméricoTamanho da margem à esquerda em pixelX
Painel

SetRightAlignPrinter

Sintaxe
TReport():SetRightAlignPrinter( <lAlignPrinter> ) →

Descrição
Seta que será utilizado o componente do binário para realizar o alinhamento das células que estejam à direita.

Parâmetros

NomeTipoDescriçãoObrigatório
lAlignPrinterLógicoSe verdadeiro, utiliza o alinhamento do binário para células à direitaX
Informações
titleImportante

Ao utilizar esse método ficar atento ao alinhamento das células, as mesmas deverão estar alinhadas à direita (sem espaços à esquerda) para que fique com o comportamento correto.

Aviso

Método disponível a partir da LIB Label 20211004

Painel

SetRow

Sintaxe
TReport():SetRow( <nRow> ) →

Descrição
Define a margem à esquerda em pixel do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
nRowNuméricoNúmero da linha a ser impressaX
Painel

SetStartPage

Sintaxe
TReport():SetStartPage( <lStartPage> ) →

Descrição
Define que deverá ser gerada uma nova página no relatório

Parâmetros

NomeTipoDescriçãoObrigatório
lStartPageLógicoSe verdadeiro, aponta a necessidade de uma nova página
Painel

SetTitle

Sintaxe
TReport():SetTitle( <cTitle> ) →

Descrição
Define o título do relatório

Parâmetros

NomeTipoDescriçãoObrigatório
cTitleLógicoTítulo do relatórioX
Painel

SetTotalInLine

Sintaxe
TReport():SetTotalInLine( <lTotalInLine> ) →

Descrição
Define se os totalizadores serão impressos em linha ou coluna

Parâmetros

NomeTipoDescriçãoObrigatório
lTotalInLineLógicoSe falso, imprime em linha
Painel

SetTotalPageBreak

Sintaxe
TReport():SetTotalPageBreak( <lTPageBreak> ) →

Descrição
Define que será quebrada página após a impressão do totalizador

Parâmetros

NomeTipoDescriçãoObrigatório
lTPageBreakLógicoSe verdadeiro, aponta a quebra de página após a impressão do totalizador
Painel

SetTotalText

Sintaxe
TReport():SetTotalText( <uText> ) →

Descrição
Define o texto que será impresso antes da impressão dos totalizadores

Parâmetros

NomeTipoDescriçãoObrigatório
uTextCharacter, CodeBlockTexto a ser impresso no formato caracter ou bloco de código
Painel

ShowFooter

Sintaxe
TReport():ShowFooter( ) →

Descrição
Define que será impresso o rodapé do relatório

Painel

ShowHeader

Sintaxe
TReport():ShowHeader( ) →

Descrição
Define que será impresso o cabeçalho do relatório

Painel

ShowParamPage

Sintaxe
TReport():ShowParamPage( ) →

Descrição
Define que será impressa a página de parâmetros do relatório

Painel

SkipLine

Sintaxe
TReport():SkipLine( <nSkip> ) →

Descrição
Salta linhas na impressão

Parâmetros

NomeTipoDescriçãoObrigatório
nSkipNuméricoQuantidade de linhas a serem saltadas
Painel

StartPage

Sintaxe
TReport():StartPage( ) →

Descrição
Inicializa um nova página para impressão

Painel

ThinLine

Sintaxe
TReport():ThinLine( ) →

Descrição
Desenha uma linha simples, iniciando posição da linha atual de impressão com a largura da página

Painel

Title

Sintaxe
TReport():Title( ) → cTitle

Descrição
Retorna o título do relatório

Retorno
cTitle - Caracter - Título do relatório

Painel

TotalText

Sintaxe
TReport():TotalText( ) → cTitle

Descrição
Retorna o texto que será impresso no totalizador geral do relatório

Painel

TotalInLine

Sintaxe
TReport():TotalInLine( ) → lRet

Descrição
Retorna se a impressão dos totalizadores será em linha

Retorno
lRet - Lógico

Painel

XmlLoad

Sintaxe
TReport():XmlLoad( <uXml> ) →

Descrição
Carrega um layout personalizado pelo usuário

Parâmetros

NomeTipoDescriçãoObrigatório
uXmlCaracter, ArrayArquivo do tipo XML com as personalizações do usuárioX
Painel

XmlSave

Sintaxe
TReport():XmlSave( ) → aXml

Descrição
Retorna um array com o layout do TReport atual.

O array contém o layout em formato XML, é retornando em formato de array para evitar problemas em relação ao tamanho máximo de strings.

Painel

XlsNewCell

Sintaxe
TReport():XlsNewCell( <c> , <lIndex> , <nCol> , <cStyle> , <nCells> , <nWidth> , <cType> ) →

Descrição
Adiciona uma célula na geração em planilha

Parâmetros

NomeTipoDescriçãoObrigatório
cCaracterInformação a ser inserida na célula
lIndexLógicoControla numeração de colunas na planilha
nColNuméricoColuna posicionada
cStyleCaracterEstilo da célula
nCellsNuméricoQuantidade de células utilizadas para a informação (Mesclar)
nWidthNuméricoLargura da célula
cTypeCaracterTipo de dado. C-Caracter, N-Numérico, L-Lógico
Painel

XlsNewCol

Sintaxe
TReport():XlsNewCol( <nCol> , <nWidth> ) →

Descrição
Adiciona uma coluna na geração em planilha

Parâmetros

NomeTipoDescriçãoObrigatório
nColNuméricoColuna posicionadaX
nWidthNumérico
X
Painel

XlsNewRow

Sintaxe
TReport():XlsNewRow( <lIncRow> ) →

Descrição
Adiciona uma linha na geração em planilha

Parâmetros

NomeTipoDescriçãoObrigatório
lIncRowLógicoAponta se deverá ser adicionada uma linha
Painel

XlsNewStyle

Sintaxe
TReport():XlsNewStyle( <cID> , <cName> , <nAlign> , <aFont> , <aBorder> , <lWrapText> , <cType> ) →

Descrição
Cria um estilo para utilizar nas criações das células

Parâmetros

NomeTipoDescriçãoObrigatório
cIDCaracterID do estilo
cNameCaracterNome do estilo
nAlignNuméricoTipo de alinhamento. 1-Esquerda, 2-Centralizado, 3-Direita
aFontArrayArray contendo a fonte. Elementos: 1-Fonte, 2-Tamanho
aBorderArrayArray contendo a borda. Elementos: 1-“Bottom”,”Left”,”Right”,”Center”, 2=Largura da borda
lWrapTextLógicoAponta quebra de linha automática
cTypeCaracterTipo de dado. C-Caracter, N-Numérico, L-Lógico
Painel

XlsSave

Sintaxe
TReport():XlsSave( ) →

Descrição
Compatibilidade – Não utilizado

Painel

SetUseGC

Sintaxe
TReport():SetUseGC( lUseGC ) →

Descrição
Define se o relatório poderá utilizar o conceito de gestão de empresas

Parâmetros

NomeTipoDescriçãoObrigatório
lUseGCLógicoSe falso, indica que o relatório não utilizará o conceito de gestão de empresas. Caso não seja informado o parâmetro o valor default é verdadeiro.
Painel

GetGCList

Sintaxe
TReport():GetGCList() → aFilterGC

Descrição
Retorna um array contendo a lista de grupos, empresas, unidade de negócio e filiais selecionadas na tela de gestão de empresas.

Retorno

Array contendo a lista de grupos, empresas, unidade de negócio e filiais selecionadas na tela de gestão de empresas.

Painel

xlsxTypeWrite

Sintaxe
TReport():xlsxTypeWrite( <nXlsxTypeWrite> )

Descrição
Informa ao TReport como a geração do XLSX deve ser efetuada, sendo que cada opção leva a cenários de maior performance ou maior consumo de memória, logo essa opção deve ser utilizada conforme necessidade específica de um relatório, normalmente relatórios com grande volume de dados.

Parâmetros

NomeTipoDescriçãoObrigatório
nXlsxTypeWriteNumeric

Tipo da geração de planilha XLSX, sendo valores de 0 a 3:

  • 0: Gera o xlsx de acordo com as regras do TReport (default)
  • 1: Gera o xlsx em arquivo (possui limitações)
  • 2: Gera o xlsx em banco de dados (baixo consumo de memória)
  • 3: Gera o xlsx em memória (alta performance)


Importante: A geração em arquivo (valor 1) é limitada e deve ser utilizada somente em relatório que possuam apenas uma seção, caso contrário, os dados podem ficar agrupados na última worksheet criada, portanto, essa opção deve ser utilizada com cautela e deve ser rigorosamente homologada.

Caso o método seja chamado durante a impressão, seu valor não será acatado.


Observação

  • Esse método está disponível na lib 20240812 ou superior
  • O valor enviado é repassado para a classe responsável por gerar a planilha XLSX: FWMsExcelXlsx
  • O método precisa ser chamado antes da ativação do TReport, ou seja, durante sua definição, normalmente na função ReportDef