FAQs - Suporte técnico

MP - ADVPL - TReport Formatação Condicional

Dúvida
Como realizar formatação das linhas e dos registros de forma condicional no Totvs Reports?

Ambiente
Protheus – ADVPL – A partir da versão 11.80

Solução
Você pode alterar as formatação das linhas do TReport através das propriedades das células ( aFormatCond ), além disso você pode colocar condições para que este processo seja realizado.

aFormatCond é o Array com as condições do usuário para impressão de forma variável da cor
da célula: Elementos: 1-Condição, 2-Cor de fundo e 3-Cor da fonte.

Exemplo

#INCLUDE "Topconn.ch"
#INCLUDE "Protheus.ch"

// Exemplo de relatorio usando tReport com uma Section

User Function RCOMR02()

local oReport
local cPerg := 'RCOMR02'
local cAlias := getNextAlias()


Pergunte(cPerg, .f.)

oReport := reportDef(cAlias, cPerg)
oReport:printDialog()

return

//+-----------------------------------------------------------------------------------------------+
//! Rotina para montagem dos dados do relatório. !
//+-----------------------------------------------------------------------------------------------+
Static Function ReportPrint(oReport,cAlias)

local oSecao1 := oReport:Section(1)

oSecao1:BeginQuery()

BeginSQL Alias cAlias

select E1_NUM, E1_VALOR, * from SE1990

EndSQL

IF(RAT(".prt", oreport:cfile) > 0)
//alert("Impressão via .prt")
ELSEIF(RAT(".xml", oreport:cfile) > 0)
//alert("Impressão via .xml")
ENDIF

oSecao1:EndQuery()
oReport:SetMeter((cAlias)->(RecCount()))
oSecao1:Print()

return

//+-----------------------------------------------------------------------------------------------+
//! Função para criação da estrutura do relatório. !
//+-----------------------------------------------------------------------------------------------+
Static Function ReportDef(cAlias, cPerg)

local cTitle := "Relatório de Conta Corrente"
local cHelp := "Permite gerar relatório de Conta Corrente de Fornecedores"
local oReport
local oSection1
local cPosit := "E1_VALOR > 100"


Pergunte(cPerg, .f.)

oReport := TReport():New('RCOMR02',cTitle,cPerg,{|oReport|ReportPrint(oReport,cAlias)},cHelp)

//Primeira seção
oSection1 := TRSection():New(oReport,"Conta Corrente",{cAlias})

ocell2:= TRCell():New(oSection1,"E1_NUM", cAlias, "Número")
ocell:= TRCell():New(oSection1,"E1_VALOR", cAlias, "Valor")

aAdd(oSection1:Cell("E1_VALOR"):aFormatCond, {"E1_VALOR > 100 .and. E1_VALOR < 1000" ,,CLR_GREEN})
aAdd(oSection1:Cell("E1_VALOR"):aFormatCond, {"E1_VALOR >= 1000" ,CLR_HGRAY,CLR_RED})
//aAdd(oSection1:Cell("E1_VALOR"):aFormatCond, {"E1_VALOR >= "+cvaltochar(MV_PAR01) ,,CLR_RED})


Return(oReport)

Saiba Mais

Treport

Esse artigo foi útil?
Usuários que acharam isso útil: 1 de 1

1 Comentários

  • Avatar
    Dario Jr

    Conteúdo muito esclarecedor. Atendeu às minhas expectativas.

     

    0
    Ações de comentário Permalink
Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _