Seção de um relatório que utiliza a classe TReport

A classe TRSection pode ser entendida como um layout do relatório, por conter células, quebras e totalizadores que darão um formato para sua impressão.

Com a classe TRSection é possível definir uma query, filtro ou índice com filtro (IndRegua) que será utilizada por ela para processamento do relatório, através do método Print e utilizando as células de posicionamento (TRPosition), sem a necessidade de escrever um fonte para processar os resultados da query, filtro ou índice com filtro.

Obs.: Quando utilizado bordas em uma seção, delimitamos o tamanho da impressão da seção utilizando uma pequena margem a direita para controlar a impressão das células.

Métodos:

AddCell

Sintaxe
TRSection():AddCell( <oCell> ) →

Descrição
Adiciona a célula na propriedade aCell da seção

Parâmetros

NomeTipoDescriçãoObrigatório
oCellObjetoObjeto TRCellX

AddOrder

Sintaxe
TRSection():AddOrder( <oOrder> ) →

Descrição
Adiciona a ordem da seção na propriedade aOrder

Parâmetros

NomeTipoDescriçãoObrigatório
oOrderObjetoObjeto TROrderX

AddPosCell

Sintaxe
TRSection():AddPosCell( <oCell> ) →

Descrição
Adiciona a célula, na sequência de impressão da seção, na propriedade aPosCell

Parâmetros

NomeTipoDescriçãoObrigatório
oCellObjetoObjeto TRCellX

AddTable

Sintaxe
TRSection():AddTable( <cTable> ) →

Descrição
Adiciona a tabela, que será utilizada na impressão da seção, na propriedade aTable

Parâmetros

NomeTipoDescriçãoObrigatório
cTableCaracterTabela utilizada na impressão da seçãoX

Alias

Sintaxe
TRSection():Alias( ) → aArray

Descrição
Retorna o alias da tabela utilizado pela query da seção, definida pelo Embedded SQL com os métodos BeginQuery e EndQuery

Retorno
aArray - Array com Alias da tabela posicionada

AutoSize

Sintaxe
TRSection():AutoSize( ) → lRet

Descrição
Retorna se a impressão da seção será ajustada automaticamente

Retorno
Se verdadeiro, ajusta automaticamente a impressão das células da seção

BeginQuery

Sintaxe
TRSection():BeginQuery( ) →

Descrição
Indica que será utilizado o Embedded SQL para criação de uma query para a seção


Observação
Ao utilizar o método BeginQuery, toda a execução de querys via Embedded SQL fica no controle desse método e do EndQuery, por isso recomendamos que todas as funções que serão utilizadas para a montagem da query, sejam utilizadas antes de chamar esse método, evitando que alguma função que faça uso do Embeded SQL tenha seu comportamento alterado.

Cell

Sintaxe
TRSection():Cell( <uCell> ) → oRet

Descrição
Retorna o objeto da classe TRCell (célula) baseado

Parâmetros

NomeTipoDescriçãoObrigatório
uCellCaracter / Numérico

Tipo Caracter: Nome ou título do objeto
Tipo Numérico: Índice do objeto segundo a ordem de criação dos componentes TRCell

X


Retorno
oRet - Objeto da classe TRCell

CellBorder

Sintaxe
TRSection():CellBorder( <uBorder> , <lHeader> ) → oRet

Descrição
Retorna a borda do seção

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
lHeaderLógicoBorda do cabeçalho


Retorno
oRet - Objeto do tipo TRBorder

CellPos

Sintaxe
TRSection():CellPos( <lReset> ) →

Descrição
Ordena as células para impressão

Parâmetros

NomeTipoDescriçãoObrigatório
lReset
Lógico

Força a inicialização do tamanho das células


CharSeparator

Sintaxe
TRSection():CharSeparator( ) →

Descrição
Retorna o caracter que separa as informações na impressão das células em linha

Retorno
cCharSeparator - Caracter utilizado para separar as informações

CheckFields

Sintaxe
TRSection():CheckFields( <aTables> , <aMemo> , <lEnabled> , <aHasArea> , <nTotCell> , <cSelect> ) → cRet

Descrição
Retorna as células que poderão ser adicionadas na query, ou seja, retira os campos do tipo Memo e as células que não foram selecionadas pelo usuário

Parâmetros

NomeTipoDescriçãoObrigatório
aTables
Array

Tabelas utilizadas na query

X
aMemo
ArrayCampos memo da tabelaX
lEnabledLógicoDefine se considera as células selecionadas pelo usuárioX
aHasAreaArrayValida se as tabelas utilizadas na query são padrão do sistema 
nTotCellNuméricoQuantidade máxima de células a serem consideradas
cSelectCaracterTexto contendo a select da queryX


Retorno
oRet - Caracter - Campos a serem considerados na query

ChkMainFilter

Sintaxe
TRSection():ChkMainFilter( <cAlias> ) → cFilter

Descrição
Retorna o filtro da tabela

Parâmetros

NomeTipoDescriçãoObrigatório
cAliasCaracter

Tabela que contém o filtro

X


Retorno
cFilter - Caracter - Filtro da tabela

CheckWidth

Sintaxe
TRSection():CheckWidth( <nWidth> ) → nRet

Descrição
Retorna a largura da seção

Parâmetros

NomeTipoDescriçãoObrigatório
nWidthNumérico

Caso a largura da seção for inferior a largura informada, a seção assume a informada no parâmetro



Retorno
nRet - Numérico - Largura da seção

CloseFilter

Sintaxe
TRSection():CloseFilter( ) →

Descrição
Finaliza todos os filtros da seção

CloseQuery

Sintaxe
TRSection():CloseQuery( <lSections> ) →

Descrição
Finaliza todas as querys da seção

Parâmetros

NomeTipoDescriçãoObrigatório
lSectionsLógico

Finaliza as querys de todas seções


DelUserCell

Sintaxe
TRSection():DelUserCell( ) →

Descrição
Exclui as células adicionadas pelo usuário

EndQuery

Sintaxe
TRSection():EndQuery( <aParam> ) →

Descrição
Indica a query criada utilizando o Embedded SQL para a seção. O método EndQuery irá juntar na query as células selecionadas e o filtro criado pelo usuário, mais a expressão das perguntas do tipo Range, que foram convertidas anteriormente pela função MakeSQLExpr. Após sua execução, a query esta pronta para ser utilizada tanto pela classe TRSection como para o programa que esta criando os componentes, sem a necessidade de utilizar TCGenQuery, ChangeQuery e TCSetField

Parâmetros

NomeTipoDescriçãoObrigatório
aParamCaracter / Array

Tipo Caracter: Pergunta. Exemplo: mv_par01 do tipo Range
Tipo Array: Lista de perguntas. Exemplo: {mv_par01, mv_par02} do tipo Range


EndBorder

Sintaxe
TRSection():EndBorder( ) →

Descrição
Finaliza a impressão das bordas

EvalCell

Sintaxe
TRSection():EvalCell( ) →

Descrição
Atualiza o conteúdo de todas as células da seção

EvalFunction

Sintaxe
TRSection():EvalFunction( ) →

Descrição
Atualiza o conteúdo dos totalizadores da seção

EvalPosition

Sintaxe
TRSection():EvalPosition( ) →

Descrição
Atualiza o conteúdo das células utilizadas na impressão da seção

ExecSql

Sintaxe
TRSection():ExecSql( ) →

Descrição
Executa a query da seção

ExUserFilter

Sintaxe
TRSection():ExUserFilter( ) → lRet

Descrição
Executa os filtros definidos pelo usuário

Retorno
lRet - Lógico - Retorno da execução do filtro (Verdadeiro ou Falso)

Finish

Sintaxe
TRSection():Finish( ) →

Descrição

Finaliza a impressão da seção, imprime os totalizadores, tratamentos de quebras das seções, entre outros tratamentos do componente. Não é necessário executar o método Finish se for utilizar o método Print, já que este faz o controle de inicialização e finalização da impressão.

ForceLineStyle

Sintaxe
TRSection():ForceLineStyle( ) → Nil

Descrição
Força a impressão da seção em linhas. A impressão em linha é o estilo: rótulo/título: conteúdo da célula.


Exemplo

GetAdvplExp

Sintaxe
TRSection():GetAdvplExp( ) →

Descrição
Força a impressão da seção em linhas

GetDynamicKey

Sintaxe
TRSection():GetDynamicKey( ) → cDynamicKey

Descrição
Retorna a chave dinâmica utilizada para geração de relatórios dinâmicos

Retorno
cDynamicKey - Caracter - Chave dinâmica

GetIdxOrder

Sintaxe
TRSection():GetIdxOrder( ) → nIdxOrder

Descrição
Retorna o índice utilizado pela tabela principal da seção

Retorno
nIdxOrder - Numérico - Índice utilizado pela tabela principal

GetOrder

Sintaxe
TRSection():GetOrder( ) → nOrder

Descrição
Retorna a ordem selecionada

Retorno
nOrder - Numérico - Ordem selecionada pelo usuário

GetParentQuery

Sintaxe
TRSection():GetParentQuery( ) →

Descrição
Atualiza as Informações de query da seção atual com as Informações da seção pai

GetQuery

Sintaxe
TRSection():GetQuery( ) → cRet

Descrição
Retorna a query, que foi definida pelo Embedded SQL com os métodos BeginQuery e EndQuery, com as células selecionadas, o filtro criado pelo usuário e as perguntas do tipo Range inclusas

Retorno
cRet - Caracter - String com a query

GetSqlExp

Sintaxe
TRSection():GetSqlExp( <cAlias> ) →

Descrição
Retorna o filtro do usuário em forma de expressão SQL

Parâmetros

NomeTipoDescriçãoObrigatório
cAliasCaracter

Tabela a ser consultada



Retorno
Filtro do usuário em forma de expressão SQL

GetUseQuery

Sintaxe
TRSection():GetUseQuery( ) → cRet

Descrição
Retorna se a seção utilize query para impressão

Retorno
lCellUseQuery - Lógico - Se verdadeiro, a query é utilizada impressão

GetUserExp

Sintaxe
TRSection():GetUserExp( <cAlias> , <lSql> , <lPosition> ) → cExp

Descrição
Retorna o filtro de usuário

Parâmetros

NomeTipoDescriçãoObrigatório
cAliasCaracter

Alias do Filtro


lSqlLógicoRetorna o filtro em formato SQL
lPositionLógicoAltera o tipo de retorno para retornar a posição do filtro


Retorno
cExp - Caracter - Filtro do usuário ou
nPos - Numérico - Posição do filtro

GetUserFilter

Sintaxe
TRSection():GetUserFilter( ) → aArray

Descrição
Retorna os filtros de usuário

Retorno
aArray - Array contendo os filtros da seção

GetWidth

Sintaxe
TRSection():GetWidth( ) → nRet

Descrição
Retorna a largura da seção

Retorno
nRet - Numérico - Largura da seção

HeaderBreak

Sintaxe
TRSection():HeaderBreak( ) → lRet

Descrição
Retorna se o cabeçalho das células será impresso após uma quebra (TRBreak)

Retorno
lRet - Lógico - Se verdadeiro, aponta que será impresso o cabeçalho

HeaderSection

Sintaxe
TRSection():HeaderSection( ) → lRet

Descrição
Retorna se o cabeçalho das células será impresso na quebra de seção

Retorno
lRet - Lógico - Se verdadeiro, aponta que será impresso o cabeçalho

Hide

Sintaxe
TRSection():Hide( ) →

Descrição
Desabilita a impressão da seção, porém todas as linhas serão processadas, somente não aparecerão no relatório.

Init

Sintaxe
TRSection():Init( <lHeader> ) →

Descrição
Executa as quebras de seções, imprime cabeçalhos entre outras configurações do relatório. Não é necessário executar o método Init se for utilizar o método Print, já que estes fazem o controle de inicialização e finalização da impressão

Parâmetros

NomeTipoDescriçãoObrigatório
lHeaderLógico

Imprime o cabeçalho da seção

X

IniRow

Sintaxe
TRSection():IniRow( ) →

Descrição
Inicializa a linha posicionada nas seções

LineCount

Sintaxe
TRSection():LineCount( ) → nRet

Descrição
Quantidade de linhas a serem impressas para cada registro da seção

Retorno
nRet - Numérico - Quantidade de linhas a serem impressas

LoadCells

Sintaxe
TRSection():LoadCells( <cTable> , <aCells> , <lDisableAll> , <lMarkAsUser> ) →

Descrição
Carrega campos do Dicionário de Campos (SX3) como células da seção, respeitando nível, uso e contexto do campo

Parâmetros

NomeTipoDescriçãoObrigatório
cTable
Caracter

Tabela que será utilizada para carregar os campos. Se não for informada será utilizado todas as tabelas informadas no método New


aCellsArrayArray com nome dos campos que serão carregados como células da seção
lDisableAllLógicoDesabilita todas as células
lMarkAsUserLógicoAponta que as células foram definidas pelos usuários

SetRelation

Sintaxe
TRSection():SetRelation( <bFormula> , <cAlias> , <uOrder> , <lSeek> ) →

Descrição
Define a fórmula de relacionamento de uma seção filha com sua seção pai, caso não utilize a query da seção pai através do método SetParentQuery

Parâmetros

NomeTipoDescriçãoObrigatório
bFormulaBloco de Código

Bloco de código com a expressão para relacionamento entre as seções

X
cAliasCaracterTabela utilizada pela fórmula
uOrderCaracter / NuméricoOrdem utilizada na tabela Tipo Caracter: Nickname da ordem de índice Tipo Numérico: Ordem do índice
lSeekLógicoIndica se será executado DbSeek com o conteúdo da fórmula

LoadOrder

Sintaxe
TRSection():LoadOrder( ) →

Descrição
Carrega índices do Dicionário de Índices (SIX) como ordem da seção

lReadOnly

Sintaxe
TRSection():lReadOnly( ) → oRet

Descrição
Retorna se o usuário pode personalizar informações da seção

Retorno
oRet - Objeto - Caso verdadeiro, aponta que o usuário não pode alterar informações da seção

Name

Sintaxe
TRSection():Name( ) → cRet

Descrição
Retorna o nome da seção

Retorno
cRet - Caracter - Nome da seção

New

Sintaxe
TRSection():New( <oParent> , <cTitle> , <uTable> , <aOrder> , <lLoadCells> , <lLoadOrder> , <uTotalText> , <lTotalInLine> , <lHeaderPage> , <lHeaderBreak> , <lPageBreak> , <lLineBreak> , <nLeftMargin> , <lLineStyle> , <nColSpace> , <lAutoSize> , <cCharSeparator> , <nLinesBefore> , <nCols> , <nClrBack> , <nClrFore> , <nPercentage> ) →

Descrição
Método construtor da classe TRSection
No parâmetro onde é informado as tabelas utilizadas pela seção, a primeira será a principal, sendo utilizada para o processamento pelo método Print. As outras tabelas serão utilizadas para que o usuário possa incluir os campos como célula.
O relacionamento entre as tabelas poderá ser feito pela query ou então pelo uso dos objetos da classe TRPosition.
Dos elementos do parâmetro onde são informadas as ordens utilizada pela seção serão criados os objetos da classe TROrder automaticamente, utilizando como índice da tabela principal a ordem do elemento no vetor.

Importante

Obs.: Ao gerar relatório em Excel com o formato tabela, é obrigatório informar qual o título da seção para que a mesma gere a aba da seção no arquivo Excel. Caso não informe o título, a seção não é impressa no relatório.

No formato tabela, o resultado do relatório é realizado com base no ReportDef, qualquer manipulação de apresentação de célula e/ou coluna na função de impressão do relatório será ignorada, pois é o comportamento deste formato.


Parâmetros

NomeTipoDescriçãoObrigatório
oParent
Objeto

Objeto da classe TReport ou TRSection que será o pai da classe TRSection

X
cTitleCaracterTítulo da seção
uTableCaracter / Array

Tipo Caracter: Tabela que sera utilizada pela seção
Tipo Array: Lista de tabelas que serão utilizadas pela seção


aOrderArrayArray contendo a descrição das ordens. Elemento: 1-Descrição, como por exemplo, Filial+Código
lLoadCellsLógicoCarrega os campos do Dicionário de Campos (SX3) das tabelas da seção como células
lLoadOrderLógicoCarrega os índices do Dicionário de Índices (SIX)
uTotalTextCaracter / Bloco de CódigoTexto do totalizador da seção, podendo ser caracter ou bloco de código
lTotalInLineLógicoImprime as células em linha
lHeaderPageLógicoCabeçalho da seção no topo da página
lHeaderBreakLógicoImprime cabeçalho na quebra da seção
lPageBreakLógicoImprime cabeçalho da seção na quebra de página
lLineBreakLógicoQuebra a linha na impressão quando as informações não couberem na página
nLeftMarginNuméricoTamanho da margem à esquerda da seção
lLineStyleLógicoImprime a seção em linha
nColSpaceNuméricoEspaçamento entre as colunas
lAutoSizeLógicoAjusta o tamanho das células para que caiba emu ma página
cCharSeparatorCaracterDefine o caracter que separa as informações na impressão em linha
nLinesBeforeNuméricoAponta a quantidade de linhas a serem saltadas antes da impressão da seção
nColsNuméricoQuantidade de colunas a serem impressas
nClrBackNuméricoCor de fundo das células da seção
nClrForeNuméricoCor da fonte das células da seção
nPercentageNuméricoTamanho da página a ser considerada na impressão em percentual

NoCell

Sintaxe
TRSection():NoCell( ) → lRet

Descrição
Verifica se não existem células configuradas para a seção

Retorno
lRet - Lógico - Se verdadeiro, não existem células configuradas

OnPrintLine

Sintaxe
TRSection():OnPrintLine( <bOnPrintLine> ) →

Descrição
Permite efetuar tratamentos antes da impressão do registro da seção

Parâmetros

NomeTipoDescriçãoObrigatório
bOnPrintLine
Bloco de Código

Bloco de Código com os tratamentos a serem realizados antes da impressão do registro da seção

X

Order

Sintaxe
TRSection():Order( <uOrder> ) → oRet

Descrição
Retorna objeto da classe TROrder (ordem)

Parâmetros

NomeTipoDescriçãoObrigatório
uOrderCaracter / Numérico

Tipo Caracter: Nickname da ordem
Tipo Numérico: Índice do objeto segundo a ordem de criação dos componentes TROrder

X


Retorno
oRet - Objeto da classe TROrder

PageBreak

Sintaxe
TRSection():PageBreak( ) → lRet

Descrição
Retorna se salta a página na quebra de seção

Retorno
lRet - Lógico - Se verdadeiro, aponta que quebra página na seção

PageWidth

Sintaxe
TRSection():PageWidth( ) → nRet

Descrição
Retorna a largura da página

Retorno
nRet - Numérico - Largura da página

Parent

Sintaxe
TRSection():Parent( ) → oRet

Descrição
Retorna o objeto pai da classe TRSection

Retorno
oRet - Objeto TRSection ou TReport

Print

Sintaxe
TRSection():Print( <lFromParent> ) → oRet

Descrição
Realiza a impressão baseada na tabela ou query principal, executando o método PrintLine para cada linha e o método Print de todas as seções filhas. Nas seções filhas, o posicionamento inicial pode ser baseado na query da seção pai (através do método SetParentQuery) ou através da regra informada pelo método SetRelation, junto com a regra informada pelo método SetParentFilter que controla o fim da impressão

Parâmetros

NomeTipoDescriçãoObrigatório
lFromParentLógico

Aponta que é impressão de uma seção filha


PrintHeader

Sintaxe
TRSection():PrintHeader( <lCellPos> , <lVisible> , <cStyle> , <lExcel> ) → oRet

Descrição
Imprime o cabeçalho da seção

Parâmetros

NomeTipoDescriçãoObrigatório
lCellPosLógicoAjusta o cabeçalho das células



lVisibleLógicoAponta que a seção está habilitada para impressão
cStyleCaracterUtilizado internamente para geração do relatório em planilha
lExcelLógicoGeração em planilha

PrintLine

Sintaxe
TRSection():PrintLine( <lEvalPosition> , <lParamPage,> , <lExcel> ) →

Descrição
Imprime a linha baseado nas células existentes

Parâmetros

NomeTipoDescriçãoObrigatório
lEvalPositionLógico

Força a atualização do conteúdo das células


lParamPageLógicoAponta que é a impressão da página de parâmetros
lExcelLógicoAponta que é geração em planilha

ResetCellPos

Sintaxe
TRSection():ResetCellPos( <lResetAll> ) →

Descrição
Define que as células deverão ser ajustadas para impressão

Parâmetros

NomeTipoDescriçãoObrigatório
lResetAllLógico

Reavalia o posicionamento das células


Report

Sintaxe
TRSection():Report( ) → oRet

Descrição
Retorna o objeto da classe TReport que a classe TRSection pertence

Retorno
oRet - Objeto TReport

SetAutoSize

Sintaxe
TRSection():SetAutoSize( <lAutoSize> ) →

Descrição
Define que as células serão ajustadas automaticamente na seção

Parâmetros

NomeTipoDescriçãoObrigatório
lAutoSize
Lógico

Ajuste automático das células


SetCellBorder

Sintaxe
TRSection():SetCellBorder( <uBorder> , <nWeight> , <nColor> , <lHeader> ) → oRet

Descrição
Define a borda da seção

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
nWeight
NuméricoLargura da borda
nColor
Numérico
Cor da borda
lHeaderLógicoBorda do cabeçalho


Retorno
oRet - Objeto do tipo TRBorder

SetCharSeparator

Sintaxe
TRSection():SetCharSeparator( <cCharSeparator> ) →

Descrição
Retorna o caracter que separa as informações na impressão das células em linha

Parâmetros

NomeTipoDescriçãoObrigatório
cCharSeparatorLógico

Caracter utilizado para separar as informações

X

SetCols

Sintaxe
TRSection():SetCols( <nCols> ) →

Descrição
Define a quantidade de  colunas a serem impressas

Parâmetros

NomeTipoDescriçãoObrigatório
nColsNumérico

Quantidade de  colunas a serem impressas

X

SetDynamicKey

Sintaxe
TRSection():SetDynamicKey( <cDynamicKey> ) →

Descrição
Define a chave que identifica a seção na impressão dinâmica

Parâmetros

NomeTipoDescriçãoObrigatório
cDynamicKeyCaracter

Chave que identifica a seção na impressão dinâmica

X

SetEdit

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

Descrição
Define se a seção poderá ser personalizada pelo usuário

Parâmetros

NomeTipoDescriçãoObrigatório
lEditLógico

Se verdadeiro, o usuário poderá personalizar a seção


SetEditCell

Sintaxe
TRSection():SetEditCell( <lEditCell> ) →

Descrição
Define se o usuário poderá personalizar as células da seção

Parâmetros

NomeTipoDescriçãoObrigatório
lEditCellLógico

Se verdadeiro, o usuário poderá personalizar as células


SetFilter

Sintaxe
TRSection():SetFilter( <cFilter> , <cIndexKey> , <cOrdem> , <cAlias> , <nIdxOrder> ) →

Descrição
Define um filtro para a tabela principal da seção. Se não informado o parâmetro com a chave de índice, será executado SET FILTER TO com o primeiro parâmetro, senão será criado um índice com filtro (IndRegua)

Parâmetros

NomeTipoDescriçãoObrigatório
cFilterCaracter

Expressão do filtro no format ADVPL

X
cIndexKeyCaracterChave de índice
cOrdemCaracterOrdem para a criação do índice
cAliasCaracterTabela a ser filtrada
nIdxOrderNuméricoOrdem no Dicionário de Índices (SIX)

SetHeaderBreak

Sintaxe
TRSection():SetHeaderBreak( <lHeaderBreak> ) →

Descrição
Define se imprime cabeçalho das células após uma quebra (TRBreak)

Parâmetros

NomeTipoDescriçãoObrigatório
lHeaderBreak
Lógico

Se verdadeiro, aponta que salta página na quebra


SetHeaderPage

Sintaxe
TRSection():SetHeaderPage( <lHeaderPage> ) →

Descrição
Define que imprime cabeçalho das células no topo da página

Parâmetros

NomeTipoDescriçãoObrigatório
lHeaderPageLógico

Se verdadeiro, aponta que imprime o cabeçalho no topo da página


SetHeaderSection

Sintaxe
TRSection():SetHeaderSection( <lHeaderSection> ) →

Descrição
Define que imprime cabeçalho das células na quebra de seção

Parâmetros

NomeTipoDescriçãoObrigatório
lHeaderSectionLógico

Se verdadeiro, aponta que imprime cabeçalho na quebra da seção


SetIdxOrder

Sintaxe
TRSection():SetIdxOrder( <nIdxOrder> ) →

Descrição
Define uma ordem de índice para a tabela principal

Parâmetros

NomeTipoDescriçãoObrigatório
nIdxOrderNumérico

Ordem de índice para a tabela principal


SetLineBreak

Sintaxe
TRSection():SetLineBreak( <lLineBreak> ) →

Descrição
Define que a impressão poderá ocorrer emu ma ou mais linhas no caso das colunas excederem o tamanho da página

Parâmetros

NomeTipoDescriçãoObrigatório
lLineBreakLógico

Se verdadeiro, imprime em uma ou mais linhas


SetLineCondition

Sintaxe
TRSection():SetLineCondition( <bLineCondition> ) →

Descrição
Permite validar a impressão do registro

Parâmetros

NomeTipoDescriçãoObrigatório
bLineConditionBloco de Código

Bloco de código utilizado na validação


SetLineStyle

Sintaxe
TRSection():SetLineStyle( <lLineStyle> ) →

Descrição
Define se imprime as células da seção em linhas

Parâmetros

NomeTipoDescriçãoObrigatório
lLineStyleLógico

Imprime as células da seção em linhas


SetLinesBefore

Sintaxe
TRSection():SetLinesBefore( <nLinesBefore> ) →

Descrição
Define a quantidade de linhas que serão saltadas antes da impressão da seção

Parâmetros

NomeTipoDescriçãoObrigatório
nLinesBeforeNumérico

Quantidade de linhas

X

SetName

Sintaxe
TRSection():SetName( ) →

Descrição
Compatibilidade – Não utilizado

SetNoFilter

Sintaxe
TRSection():SetNoFilter( <cAlias> ) →

Descrição
Define que a tabela não poderá ser receber filtros de usuário

Parâmetros

NomeTipoDescriçãoObrigatório
cAliasCaracter

Tabela a ser considerada

X

SetUseQuery

Sintaxe
TRSection():SetUseQuery( <lCellUseQuery> ) →

Descrição
Define que a seção utilize query na impressão

Parâmetros

NomeTipoDescriçãoObrigatório
lCellUseQueryLógico

Se verdadeiro, utiliza query na impressão

X

SetOrder

Sintaxe
TRSection():SetOrder( <nOrder> ) →

Descrição
Define a ordem (TROrder) que será utilizada pela seção

Parâmetros

NomeTipoDescriçãoObrigatório
nOrderNumérico

Ordem da seção

X

SetPageBreak

Sintaxe
TRSection():SetPageBreak( <lPageBreak> ) →

Descrição
Define se salta a página na quebra de seção

Parâmetros

NomeTipoDescriçãoObrigatório
lPageBreakLógico

Se verdadeiro, aponta que salta página na quebra de seção


SetParentFilter

Sintaxe
TRSection():SetParentFilter( <bFilter> , <bParam> ) →

Descrição
Define a regra de saída do loop de impressão das seções filhas

Parâmetros

NomeTipoDescriçãoObrigatório
bFilterBloco de Código

Bloco de código com a regra para saída do loop

X
bParamBloco de CódigoBloco de código com a expressão que retorna o valor que é enviado como parâmetro para a regra de saída do loop

SetParentQuery

Sintaxe
TRSection():SetParentQuery( ) →

Descrição
Define que a seção filha utiliza a query da seção pai na impressão da seção

SetParentRecno

Sintaxe
TRSection():SetParentRecno( <lParentRecno> ) →

Descrição
Define se a seção utiliza o registro da seção pai

Parâmetros

NomeTipoDescriçãoObrigatório
lParentRecnoLógico

Utiliza o registro da seção pai


SetPercentage

Sintaxe
TRSection():SetPercentage( <nPercentage> ) →

Descrição
Define o tamanho da página a ser considerada na impressão em percentual

Parâmetros

NomeTipoDescriçãoObrigatório
nPercentageNumérico

Tamanho da página a ser considerada na impressão em percentual

X

SetPrintLayout

Sintaxe
TRSection():SetPrintLayout( ) →

Descrição
Compatibilidade – Não utilizado

SetQuery

Sintaxe
TRSection():SetQuery( <cAlias> , <cQuery> , <lChangeQuery> , <aParam> , <aTCFields> ) →

Descrição
Aplica os tratamentos necessários para execução das querys, tais como, adicionar células de usuários, aplicação de filtros entre outros

Parâmetros

NomeTipoDescriçãoObrigatório
cAliasCaracter

Tabela principal da query

X
cQueryCaracterQuery da seçãoX
lChangeQueryLógicoSe verdadeiro, realiza tratamentos para outros bancos de dados
aParamArrayParâmetros do tipo Range a serem utilizados no filtro da query
aTCFieldsArrayLista de campos com tipo de dados diferente de character que devem ser tratados para apresentar os resultados na query. Elementos: 1-Campo 2-Tipo 3-Tamanho 4-Decimal

SetReadOnly

Sintaxe
TRSection():SetReadOnly( <lReadOnly> ) →

Descrição
Define que o usuário não poderá alterar informações da seção, ou seja, não poderá remover as células pré-definidas

Parâmetros

NomeTipoDescriçãoObrigatório
lReadOnlyLógico

Se verdadeiro, aponta que o usuário não poderá alterar Informações da seção


SetRelation

Sintaxe
TRSection():SetRelation( <bFormula> , <cAlias> , <uOrder> , <lSeek> ) →

Descrição
Define a fórmula de relacionamento de uma seção filha com sua seção pai, caso não utilize a query da seção pai através do método SetParentQuery

Parâmetros

NomeTipoDescriçãoObrigatório
bFormulaBloco de Código

Bloco de código com a expressão para relacionamento entre as seções

X
cAliasCaracterTabela utilizada pela fórmula
uOrderCaracter / NuméricoOrdem utilizada na tabela Tipo Caracter: Nickname da ordem de índice Tipo Numérico: Ordem do índice
lSeekLógicoIndica se será executado DbSeek com o conteúdo da fórmula

SetRow

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

Descrição
Define a linha de impressão

Parâmetros

NomeTipoDescriçãoObrigatório
nRowNumérico

Linha atual

X

SetWidth

Sintaxe
TRSection():SetWidth( <nWidth> ) →

Descrição
Define a largura da seção

Parâmetros

NomeTipoDescriçãoObrigatório
nWidthNumérico

Largura da seção

X

Show

Sintaxe
TRSection():Show( ) →

Descrição
Habilita a impressão da seção

UseFilter

Sintaxe
TRSection():UseFilter( ) → lRet

Descrição
Retorna se existem células personalizadas pelo usuário

Retorno
lRet - Lógico - Se verdadeiro, existe célula personalizada

Visible

Sintaxe
TRSection():Visible( ) → lRet

Descrição
Retorna se a seção esta habilitada para impressão

Retorno
lRet - Lógico - Caso verdadeiro, a seção está habilitada

XmlLoad

Sintaxe
TRSection():XmlLoad( <oXml> ) →

Descrição
Carrega uma seção do layout personalizado pelo usuário

Parâmetros

NomeTipoDescriçãoObrigatório
oXmlObjeto

Objeto do tipo XML com as personalizações da seção

X

IsAlignInCell

Sintaxe
TRSection():IsAlignInCell() → lRet

Descrição

Recupera se a definição de alinhamento para as células da seção, se usa o padrão de alinhamento dentro do tamanho das células.

Retorno

Verdadeiro que usa a forma padrão, alinhamento dentro do tamanho da célula.

O método só está disponível a partir da lib 20210517.

IsExpandedAlignment

Sintaxe
TRSection():IsExpandedAlignment() → lRet

Descrição

Recupera a definição de alinhamento para as células da seção, se usa o formato expandido para colunas ignorando o tamanho das células.

Retorno

Verdadeiro que usa a forma expandida, alinhamento considerando o espaço disponível para a célula.

O método só está disponível a partir da lib 20210517.

UseExpandedAlignment

Sintaxe
TRSection():UseExpandedAlignment() → Nil

Descrição

Define que a impressão em linha/com colunas deve usar o espaço total disponível até a próxima coluna e não somente o espaço do tamanho da célula.

Este será o comportamento padrão para as impressões que MpReport e a listagem do browse a partir da lib 20210517.

O método só está disponível a partir da lib 20210517.

oSection := TRSection():New(oReport,cSection,cAlias,aOrder,.T.,lLoadOrder)
oSection:UseExpandedAlignment()