Agrupando dados no Relatório de Seção.

Descrição:

Como agrupar dados por minuto no relatório?

Solução:

Para isso, primeiro insira uma nova Seção Group Header/Footer no relatório.

Para definir o critério de agrupamento, configure a propriedade DataField do GroupHeader. Este procedimento pode ser realizado via scripts do relatório.
Para agrupar por minuto, será necessário adicionar um campo ao relatório que receberá a atribuição de todos os minutos existentes no campo que contém a data (ex.: E3TimeStamp), para  posteriormente ser associado a propriedade DataField do GroupHeader.
Exemplo de script:
Sub ActiveReport_ReportStart
  'Esse script é necessário para o correto funcionamento de controles E3Chart
  'Caso deseje acessar dados da aplicação, é possível utilizar o objeto 'Application' criado abaixo
  dim Application = Activator.CreateInstance(Type.GetTypeFromProgID("Reports.E3ApplicationLink"))
  Application.LinkWithApplication(rpt)
  
  Me.GroupHeader1.DataField = "Minute"	
End Sub	

Sub ActiveReport_DataInitialize
  rpt.Fields.Add("Minute")	
End Sub

Function ActiveReport_FetchData(ByVal EOF as Boolean) as Boolean
  'msgbox(Minute(rpt.Fields.Item("E3Timestamp").Value))
  rpt.Fields.Item("Minute").Value = Minute(rpt.Fields.Item("E3Timestamp").Value)
  ActiveReport_FetchData = EOF
End Function
No GroupFooter, insira os Campos da Consulta a serem visualizados. Depois, configure as seguintes propriedades nos campos a terem sua média calculada:

SummaryFunc = 1 – ddSFAvg
SummaryGroup = GroupHeader1
SummaryRunning = 1 – ddSRGroup
SummaryType = 3 – ddSMSubTotal

 

A propriedade SummaryFunc define o cálculo a ser realizado. Caso deseje calcular a soma ou os valores mínimo e máximo ao invés da média, basta usar outra função.

Veja mais detalhes sobre as propriedades mencionadas no Manual de Referências de Scripts do E3.

A aplicação exemplo em anexo foi desenvolvida no E3 versão 6.6 Build 292.

Anexos:

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 2 / 5. Count: 2

Leave a Reply

Your email address will not be published.Required fields are marked *