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.
Sintaxe
TRSection():AddCell( <oCell> ) →
Descrição
Adiciona a célula na propriedade aCell da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
oCell | Objeto | Objeto TRCell | X |
Sintaxe
TRSection():AddOrder( <oOrder> ) →
Descrição
Adiciona a ordem da seção na propriedade aOrder
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
oOrder | Objeto | Objeto TROrder | X |
Sintaxe
TRSection():AddPosCell( <oCell> ) →
Descrição
Adiciona a célula, na sequência de impressão da seção, na propriedade aPosCell
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
oCell | Objeto | Objeto TRCell | X |
Sintaxe
TRSection():AddTable( <cTable> ) →
Descrição
Adiciona a tabela, que será utilizada na impressão da seção, na propriedade aTable
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cTable | Caracter | Tabela utilizada na impressão da seção | X |
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
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
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.
Sintaxe
TRSection():Cell( <uCell> ) → oRet
Descrição
Retorna o objeto da classe TRCell (célula) baseado
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
uCell | Caracter / Numérico | Tipo Caracter: Nome ou título do objeto | X |
Retorno
oRet - Objeto da classe TRCell
Sintaxe
TRSection():CellBorder( <uBorder> , <lHeader> ) → oRet
Descrição
Retorna a borda do seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
uBorder | Caracter / Numérico | Tipo Caracter: "TOP","BOTTOM","LEFT","RIGHT",”ALL” | X |
lHeader | Lógico | Borda do cabeçalho |
Retorno
oRet - Objeto do tipo TRBorder
Sintaxe
TRSection():CellPos( <lReset> ) →
Descrição
Ordena as células para impressão
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lReset | Lógico | Força a inicialização do tamanho das células |
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
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
aTables | Array | Tabelas utilizadas na query | X |
aMemo | Array | Campos memo da tabela | X |
lEnabled | Lógico | Define se considera as células selecionadas pelo usuário | X |
aHasArea | Array | Valida se as tabelas utilizadas na query são padrão do sistema | |
nTotCell | Numérico | Quantidade máxima de células a serem consideradas | |
cSelect | Caracter | Texto contendo a select da query | X |
Retorno
oRet - Caracter - Campos a serem considerados na query
Sintaxe
TRSection():ChkMainFilter( <cAlias> ) → cFilter
Descrição
Retorna o filtro da tabela
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cAlias | Caracter | Tabela que contém o filtro | X |
Retorno
cFilter - Caracter - Filtro da tabela
Sintaxe
TRSection():CheckWidth( <nWidth> ) → nRet
Descrição
Retorna a largura da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nWidth | Numé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
Sintaxe
TRSection():CloseFilter( ) →
Descrição
Finaliza todos os filtros da seção
Sintaxe
TRSection():CloseQuery( <lSections> ) →
Descrição
Finaliza todas as querys da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lSections | Lógico | Finaliza as querys de todas seções |
Sintaxe
TRSection():DelUserCell( ) →
Descrição
Exclui as células adicionadas pelo usuário
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
aParam | Caracter / Array | Tipo Caracter: Pergunta. Exemplo: mv_par01 do tipo Range |
Sintaxe
TRSection():EndBorder( ) →
Descrição
Finaliza a impressão das bordas
Sintaxe
TRSection():EvalCell( ) →
Descrição
Atualiza o conteúdo de todas as células da seção
Sintaxe
TRSection():EvalFunction( ) →
Descrição
Atualiza o conteúdo dos totalizadores da seção
Sintaxe
TRSection():EvalPosition( ) →
Descrição
Atualiza o conteúdo das células utilizadas na impressão da seção
Sintaxe
TRSection():ExecSql( ) →
Descrição
Executa a query da seção
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)
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.
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
Sintaxe
TRSection():GetAdvplExp( ) →
Descrição
Força a impressão da seção em linhas
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
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
Sintaxe
TRSection():GetOrder( ) → nOrder
Descrição
Retorna a ordem selecionada
Retorno
nOrder - Numérico - Ordem selecionada pelo usuário
Sintaxe
TRSection():GetParentQuery( ) →
Descrição
Atualiza as Informações de query da seção atual com as Informações da seção pai
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
Sintaxe
TRSection():GetSqlExp( <cAlias> ) →
Descrição
Retorna o filtro do usuário em forma de expressão SQL
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cAlias | Caracter | Tabela a ser consultada |
Retorno
Filtro do usuário em forma de expressão SQL
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
Sintaxe
TRSection():GetUserExp( <cAlias> , <lSql> , <lPosition> ) → cExp
Descrição
Retorna o filtro de usuário
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cAlias | Caracter | Alias do Filtro | |
lSql | Lógico | Retorna o filtro em formato SQL | |
lPosition | Lógico | Altera 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
Sintaxe
TRSection():GetUserFilter( ) → aArray
Descrição
Retorna os filtros de usuário
Retorno
aArray - Array contendo os filtros da seção
Sintaxe
TRSection():GetWidth( ) → nRet
Descrição
Retorna a largura da seção
Retorno
nRet - Numérico - Largura da seção
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
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
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.
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lHeader | Lógico | Imprime o cabeçalho da seção | X |
Sintaxe
TRSection():IniRow( ) →
Descrição
Inicializa a linha posicionada nas seções
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
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
Nome | Tipo | Descrição | Obrigató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 | |
aCells | Array | Array com nome dos campos que serão carregados como células da seção | |
lDisableAll | Lógico | Desabilita todas as células | |
lMarkAsUser | Lógico | Aponta que as células foram definidas pelos usuários |
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
bFormula | Bloco de Código | Bloco de código com a expressão para relacionamento entre as seções | X |
cAlias | Caracter | Tabela utilizada pela fórmula | |
uOrder | Caracter / Numérico | Ordem utilizada na tabela Tipo Caracter: Nickname da ordem de índice Tipo Numérico: Ordem do índice | |
lSeek | Lógico | Indica se será executado DbSeek com o conteúdo da fórmula |
Sintaxe
TRSection():LoadOrder( ) →
Descrição
Carrega índices do Dicionário de Índices (SIX) como ordem da seção
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
Sintaxe
TRSection():Name( ) → cRet
Descrição
Retorna o nome da seção
Retorno
cRet - Caracter - Nome da seção
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
oParent | Objeto | Objeto da classe TReport ou TRSection que será o pai da classe TRSection | X |
cTitle | Caracter | Título da seção | |
uTable | Caracter / Array | Tipo Caracter: Tabela que sera utilizada pela seção | |
aOrder | Array | Array contendo a descrição das ordens. Elemento: 1-Descrição, como por exemplo, Filial+Código | |
lLoadCells | Lógico | Carrega os campos do Dicionário de Campos (SX3) das tabelas da seção como células | |
lLoadOrder | Lógico | Carrega os índices do Dicionário de Índices (SIX) | |
uTotalText | Caracter / Bloco de Código | Texto do totalizador da seção, podendo ser caracter ou bloco de código | |
lTotalInLine | Lógico | Imprime as células em linha | |
lHeaderPage | Lógico | Cabeçalho da seção no topo da página | |
lHeaderBreak | Lógico | Imprime cabeçalho na quebra da seção | |
lPageBreak | Lógico | Imprime cabeçalho da seção na quebra de página | |
lLineBreak | Lógico | Quebra a linha na impressão quando as informações não couberem na página | |
nLeftMargin | Numérico | Tamanho da margem à esquerda da seção | |
lLineStyle | Lógico | Imprime a seção em linha | |
nColSpace | Numérico | Espaçamento entre as colunas | |
lAutoSize | Lógico | Ajusta o tamanho das células para que caiba emu ma página | |
cCharSeparator | Caracter | Define o caracter que separa as informações na impressão em linha | |
nLinesBefore | Numérico | Aponta a quantidade de linhas a serem saltadas antes da impressão da seção | |
nCols | Numérico | Quantidade de colunas a serem impressas | |
nClrBack | Numérico | Cor de fundo das células da seção | |
nClrFore | Numérico | Cor da fonte das células da seção | |
nPercentage | Numérico | Tamanho da página a ser considerada na impressão em percentual |
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
Sintaxe
TRSection():OnPrintLine( <bOnPrintLine> ) →
Descrição
Permite efetuar tratamentos antes da impressão do registro da seção
Parâmetros
Nome | Tipo | Descrição | Obrigató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 |
Sintaxe
TRSection():Order( <uOrder> ) → oRet
Descrição
Retorna objeto da classe TROrder (ordem)
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
uOrder | Caracter / Numérico | Tipo Caracter: Nickname da ordem | X |
Retorno
oRet - Objeto da classe TROrder
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
Sintaxe
TRSection():PageWidth( ) → nRet
Descrição
Retorna a largura da página
Retorno
nRet - Numérico - Largura da página
Sintaxe
TRSection():Parent( ) → oRet
Descrição
Retorna o objeto pai da classe TRSection
Retorno
oRet - Objeto TRSection ou TReport
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lFromParent | Lógico | Aponta que é impressão de uma seção filha |
Sintaxe
TRSection():PrintHeader( <lCellPos> , <lVisible> , <cStyle> , <lExcel> ) → oRet
Descrição
Imprime o cabeçalho da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lCellPos | Lógico | Ajusta o cabeçalho das células | |
lVisible | Lógico | Aponta que a seção está habilitada para impressão | |
cStyle | Caracter | Utilizado internamente para geração do relatório em planilha | |
lExcel | Lógico | Geração em planilha |
Sintaxe
TRSection():PrintLine( <lEvalPosition> , <lParamPage,> , <lExcel> ) →
Descrição
Imprime a linha baseado nas células existentes
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lEvalPosition | Lógico | Força a atualização do conteúdo das células | |
lParamPage | Lógico | Aponta que é a impressão da página de parâmetros | |
lExcel | Lógico | Aponta que é geração em planilha |
Sintaxe
TRSection():ResetCellPos( <lResetAll> ) →
Descrição
Define que as células deverão ser ajustadas para impressão
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lResetAll | Lógico | Reavalia o posicionamento das células |
Sintaxe
TRSection():Report( ) → oRet
Descrição
Retorna o objeto da classe TReport que a classe TRSection pertence
Retorno
oRet - Objeto TReport
Sintaxe
TRSection():SetAutoSize( <lAutoSize> ) →
Descrição
Define que as células serão ajustadas automaticamente na seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lAutoSize | Lógico | Ajuste automático das células |
Sintaxe
TRSection():SetCellBorder( <uBorder> , <nWeight> , <nColor> , <lHeader> ) → oRet
Descrição
Define a borda da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
uBorder | Caracter / Numérico | Tipo Caracter: "TOP","BOTTOM","LEFT","RIGHT",”ALL” | X |
nWeight | Numérico | Largura da borda | |
nColor | Numérico | Cor da borda | |
lHeader | Lógico | Borda do cabeçalho |
Retorno
oRet - Objeto do tipo TRBorder
Sintaxe
TRSection():SetCharSeparator( <cCharSeparator> ) →
Descrição
Retorna o caracter que separa as informações na impressão das células em linha
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cCharSeparator | Lógico | Caracter utilizado para separar as informações | X |
Sintaxe
TRSection():SetCols( <nCols> ) →
Descrição
Define a quantidade de colunas a serem impressas
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nCols | Numérico | Quantidade de colunas a serem impressas | X |
Sintaxe
TRSection():SetDynamicKey( <cDynamicKey> ) →
Descrição
Define a chave que identifica a seção na impressão dinâmica
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cDynamicKey | Caracter | Chave que identifica a seção na impressão dinâmica | X |
Sintaxe
TRSection():SetEdit( <lEdit> ) →
Descrição
Define se a seção poderá ser personalizada pelo usuário
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lEdit | Lógico | Se verdadeiro, o usuário poderá personalizar a seção |
Sintaxe
TRSection():SetEditCell( <lEditCell> ) →
Descrição
Define se o usuário poderá personalizar as células da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lEditCell | Lógico | Se verdadeiro, o usuário poderá personalizar as células |
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cFilter | Caracter | Expressão do filtro no format ADVPL | X |
cIndexKey | Caracter | Chave de índice | |
cOrdem | Caracter | Ordem para a criação do índice | |
cAlias | Caracter | Tabela a ser filtrada | |
nIdxOrder | Numérico | Ordem no Dicionário de Índices (SIX) |
Sintaxe
TRSection():SetHeaderBreak( <lHeaderBreak> ) →
Descrição
Define se imprime cabeçalho das células após uma quebra (TRBreak)
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lHeaderBreak | Lógico | Se verdadeiro, aponta que salta página na quebra |
Sintaxe
TRSection():SetHeaderPage( <lHeaderPage> ) →
Descrição
Define que imprime cabeçalho das células no topo da página
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lHeaderPage | Lógico | Se verdadeiro, aponta que imprime o cabeçalho no topo da página |
Sintaxe
TRSection():SetHeaderSection( <lHeaderSection> ) →
Descrição
Define que imprime cabeçalho das células na quebra de seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lHeaderSection | Lógico | Se verdadeiro, aponta que imprime cabeçalho na quebra da seção |
Sintaxe
TRSection():SetIdxOrder( <nIdxOrder> ) →
Descrição
Define uma ordem de índice para a tabela principal
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nIdxOrder | Numérico | Ordem de índice para a tabela principal |
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lLineBreak | Lógico | Se verdadeiro, imprime em uma ou mais linhas |
Sintaxe
TRSection():SetLineCondition( <bLineCondition> ) →
Descrição
Permite validar a impressão do registro
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
bLineCondition | Bloco de Código | Bloco de código utilizado na validação |
Sintaxe
TRSection():SetLineStyle( <lLineStyle> ) →
Descrição
Define se imprime as células da seção em linhas
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lLineStyle | Lógico | Imprime as células da seção em linhas |
Sintaxe
TRSection():SetLinesBefore( <nLinesBefore> ) →
Descrição
Define a quantidade de linhas que serão saltadas antes da impressão da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nLinesBefore | Numérico | Quantidade de linhas | X |
Sintaxe
TRSection():SetName( ) →
Descrição
Compatibilidade – Não utilizado
Sintaxe
TRSection():SetNoFilter( <cAlias> ) →
Descrição
Define que a tabela não poderá ser receber filtros de usuário
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cAlias | Caracter | Tabela a ser considerada | X |
Sintaxe
TRSection():SetUseQuery( <lCellUseQuery> ) →
Descrição
Define que a seção utilize query na impressão
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lCellUseQuery | Lógico | Se verdadeiro, utiliza query na impressão | X |
Sintaxe
TRSection():SetOrder( <nOrder> ) →
Descrição
Define a ordem (TROrder) que será utilizada pela seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nOrder | Numérico | Ordem da seção | X |
Sintaxe
TRSection():SetPageBreak( <lPageBreak> ) →
Descrição
Define se salta a página na quebra de seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lPageBreak | Lógico | Se verdadeiro, aponta que salta página na quebra de seção |
Sintaxe
TRSection():SetParentFilter( <bFilter> , <bParam> ) →
Descrição
Define a regra de saída do loop de impressão das seções filhas
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
bFilter | Bloco de Código | Bloco de código com a regra para saída do loop | X |
bParam | Bloco de Código | Bloco de código com a expressão que retorna o valor que é enviado como parâmetro para a regra de saída do loop |
Sintaxe
TRSection():SetParentQuery( ) →
Descrição
Define que a seção filha utiliza a query da seção pai na impressão da seção
Sintaxe
TRSection():SetParentRecno( <lParentRecno> ) →
Descrição
Define se a seção utiliza o registro da seção pai
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lParentRecno | Lógico | Utiliza o registro da seção pai |
Sintaxe
TRSection():SetPercentage( <nPercentage> ) →
Descrição
Define o tamanho da página a ser considerada na impressão em percentual
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nPercentage | Numérico | Tamanho da página a ser considerada na impressão em percentual | X |
Sintaxe
TRSection():SetPrintLayout( ) →
Descrição
Compatibilidade – Não utilizado
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cAlias | Caracter | Tabela principal da query | X |
cQuery | Caracter | Query da seção | X |
lChangeQuery | Lógico | Se verdadeiro, realiza tratamentos para outros bancos de dados | |
aParam | Array | Parâmetros do tipo Range a serem utilizados no filtro da query | |
aTCFields | Array | Lista 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 |
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lReadOnly | Lógico | Se verdadeiro, aponta que o usuário não poderá alterar Informações da seção |
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
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
bFormula | Bloco de Código | Bloco de código com a expressão para relacionamento entre as seções | X |
cAlias | Caracter | Tabela utilizada pela fórmula | |
uOrder | Caracter / Numérico | Ordem utilizada na tabela Tipo Caracter: Nickname da ordem de índice Tipo Numérico: Ordem do índice | |
lSeek | Lógico | Indica se será executado DbSeek com o conteúdo da fórmula |
Sintaxe
TRSection():SetRow( <nRow> ) →
Descrição
Define a linha de impressão
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nRow | Numérico | Linha atual | X |
Sintaxe
TRSection():SetWidth( <nWidth> ) →
Descrição
Define a largura da seção
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nWidth | Numérico | Largura da seção | X |
Sintaxe
TRSection():Show( ) →
Descrição
Habilita a impressão da seção
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
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
Sintaxe
TRSection():XmlLoad( <oXml> ) →
Descrição
Carrega uma seção do layout personalizado pelo usuário
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
oXml | Objeto | Objeto do tipo XML com as personalizações da seção | X |
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.
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.
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()