- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Totalizador no TReport
×
Linguagem de Programação ADVPL
Perguntas Totalizador no TReport
- diorgenes
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 18
- Obrigados Recebidos: 0
11 anos 10 meses atrás #10551
por diorgenes
Totalizador no TReport foi criado por diorgenes
Pessoal estou fazendo um relatorio utilizando o TReport, esta bacana... pórem eu tenho 3 totalizadores, e um deles eu preciso alterar o valor antes da impressão.
Eu já consegui acessar os valores do totalizadores, porem alterar o valor eu nao consigo...
Declaração dos totalizadores:
TRFunction():New(oSection1:Cell("TOTALVENDA"),"TVENDA","SUM",,,"@E 99,999,999",,.F.,.T.)
TRFunction():New(oSection1:Cell("LUCRO"),"TLUCRO","SUM",,,"@E 99,999,999",,.F.,.T.)
TRFunction():New(oSection1:Cell("LUCROP"),"TLUCROP","ONPRINT",,,"@E 99,999,999",,.F.,.T.)
Para acessar os valores é assim:
oReport:GetFunction("TLUCRO"):GetValue()
Porem para alterar o valor eu nao sei... ja tentei com setValue, Print e nada...
Att
Diorgenes
Eu já consegui acessar os valores do totalizadores, porem alterar o valor eu nao consigo...
Declaração dos totalizadores:
TRFunction():New(oSection1:Cell("TOTALVENDA"),"TVENDA","SUM",,,"@E 99,999,999",,.F.,.T.)
TRFunction():New(oSection1:Cell("LUCRO"),"TLUCRO","SUM",,,"@E 99,999,999",,.F.,.T.)
TRFunction():New(oSection1:Cell("LUCROP"),"TLUCROP","ONPRINT",,,"@E 99,999,999",,.F.,.T.)
Para acessar os valores é assim:
oReport:GetFunction("TLUCRO"):GetValue()
Porem para alterar o valor eu nao sei... ja tentei com setValue, Print e nada...
Att
Diorgenes
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
11 anos 10 meses atrás #10553
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Totalizador no TReport
Tenta isso:
oReport:GetFunction("TOTAL1"):SectionValue() + 125
oReport:GetFunction("TOTAL1"):SectionValue() + 125
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- diorgenes
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 18
- Obrigados Recebidos: 0
11 anos 10 meses atrás #10555
por diorgenes
Respondido por diorgenes no tópico Totalizador no TReport
Luiz, testei aqui e não funcionou... o metodo SectionValue() me retorna o valor atual da seção (TRSection) porém não altera o valor do objeto.
Já não sei mas o que testar...
Att
Diorgenes
Já não sei mas o que testar...
Att
Diorgenes
Por favor Acessar ou Registrar para participar da conversa.
- diorgenes
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 18
- Obrigados Recebidos: 0
11 anos 10 meses atrás - 11 anos 10 meses atrás #10558
por diorgenes
Respondido por diorgenes no tópico Totalizador no TReport
Pessoal depois de pensar mais um pouco... e fazer alguns testes descobri como fazer...
A classe TRFunction possui muitas propriedades e metodos, porem nenhum dos possiveis metodos alterava o valor do totalizador...
então reparei que a classe tinhas as seguintes propriedades:
então alterei a propriedade uReport assim:
ficou assim meu calculo para saber o percentual de lucro sobre a venda...
A classe TRFunction possui muitas propriedades e metodos, porem nenhum dos possiveis metodos alterava o valor do totalizador...
então reparei que a classe tinhas as seguintes propriedades:
uPage Total acumulado por página.
uReport Total acumulado geral do relatório.
uSection Total acumulado por seção.
então alterei a propriedade uReport assim:
oReport:GetFunction("TLUCROP"):uReport := VALOR
ficou assim meu calculo para saber o percentual de lucro sobre a venda...
oReport:GetFunction("TLUCROP"):uReport := (oReport:GetFunction("TLUCRO"):GetValue() / oReport:GetFunction("TVENDA"):GetValue() ) * 100
Ultima edição: 11 anos 10 meses atrás por diorgenes.
Por favor Acessar ou Registrar para participar da conversa.
- diorgenes
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 18
- Obrigados Recebidos: 0
11 anos 10 meses atrás #10640
por diorgenes
Respondido por diorgenes no tópico Totalizador no TReport
Pessoal,
Estou progredindo nos meus relatorios, agora estou implementando um com duas seções.
Porém quando eu faço a subtotalização de uma seção, eu não consigo manipular o valor da totalização (mesmo problema do topico).
No TRFUNCTION existe somente algumas funções de totalizacao pre-definidas, tais como (SUM, COUNT, etc), porém necessito um outro calculo baseado em outros totalizadores.
Eu vi que tem o metodo uFormula mas não sei como utiliza-lo...
na documentação diz o seguinte:
SetFormula(uFormula)
Define a fórmula utilizada pelo totalizador no lugar de utilizar o conteúdo da célula que ele se refere.
uFormula Tipo Caracter: Expressão ADVPL para macro execução
Tipo Bloco de código: Bloco de código com a expressão ADVPL para execução
Como informar aqui que ele vai pegar os totais de dois totalizadores e executar o seguinte calculo: (T1 / T2) * 100
Alguém que manja de TReport poderia me passar algumas dicas...
Att
Diorgenes
Estou progredindo nos meus relatorios, agora estou implementando um com duas seções.
Porém quando eu faço a subtotalização de uma seção, eu não consigo manipular o valor da totalização (mesmo problema do topico).
No TRFUNCTION existe somente algumas funções de totalizacao pre-definidas, tais como (SUM, COUNT, etc), porém necessito um outro calculo baseado em outros totalizadores.
Eu vi que tem o metodo uFormula mas não sei como utiliza-lo...
na documentação diz o seguinte:
SetFormula(uFormula)
Define a fórmula utilizada pelo totalizador no lugar de utilizar o conteúdo da célula que ele se refere.
uFormula Tipo Caracter: Expressão ADVPL para macro execução
Tipo Bloco de código: Bloco de código com a expressão ADVPL para execução
Como informar aqui que ele vai pegar os totais de dois totalizadores e executar o seguinte calculo: (T1 / T2) * 100
Alguém que manja de TReport poderia me passar algumas dicas...
Att
Diorgenes
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
11 anos 10 meses atrás #10642
por kanaamlrr
Respondido por kanaamlrr no tópico Totalizador no TReport
Cara, você pode tentar da seguinte forma:
"(T1 / T2) * 100" ou {||(T1 / T2) * 100}
Não entendi ao certo qual é a forma correta.
se nenhum dos dois funcionar tenta
"{||(T1 / T2) * 100}"
Depois fala pra gente se deu certo.
"(T1 / T2) * 100" ou {||(T1 / T2) * 100}
Não entendi ao certo qual é a forma correta.
se nenhum dos dois funcionar tenta
"{||(T1 / T2) * 100}"
Depois fala pra gente se deu certo.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Totalizador no TReport
Tempo para a criação da página:0.142 segundos