Descrição:
Como imprimir o relatório de um determinado período escolhendo data/hora inicial e final?
Solução:
Na consulta do relatório, inserir um filtro no campo E3TimeStamp:
DataInicial e DataFinal são variáveis utilizadas no filtro. Estas variáveis recebem as datas inicial e final, que são escolhidas pelo usuário para aplicação do filtro, de dois setpoints localizados em uma tela.
Insira dois setpoints em uma tela, com os nomes “spDataInicial” e “spDataFinal”. No evento Click() dos dois setpoints, utilize o script abaixo para abrir o pop-up de seleção de datas:
IF Application.ShowDatePicker(DataHora, 0, 0) THEN Value = DataHora END IF
No botão que executa a impressão do relatório, utilize o script abaixo:
DataIni = Screen.Item("spDataInicial").Value
DataFim = Screen.Item("spDataFinal").Value
Set Report = Application.LoadReport("[Relatório1]")
Report.Item("Consulta1").SetVariableValue "DataInicial", DataIni
Report.Item("Consulta1").SetVariableValue "DataFinal", DataFim
Report.PrintPreview()
Para montar o script acima, deve-se utilizar o AppBrowser conforme a figura abaixo, substituindo VarName por DataInicial, que é a variável que foi criada anteriormente no filtro do E3TimeStamp da consulta, e Value por DataIni, que a variável local que recebe a data inicial escolhida pelo usuário no spDataInicial. Deve-se realizar o mesmo procedimento para a data final.
Boa tarde,
no meu projeto a consulta 1 não tem associações,
como proceder então, utilizo Elipse E3
desde já agradeço
André,
Para adicionar o filtro, no objeto consulta clique no botão na coluna Filtro do campo desejado.
Eu fiz o relatório tudo certinho, porém estou tentando exportar o que eu filtro na tela do View e não consigo. alguém poderia me ajudar ?
Faltava aplicar o filtro (SetVariableValue) na Consulta do Relatório. Além disso, o filtro havia sido criado para o campo errado (FullAlarmSourceName em vez do E3TimeStamp).
Posso escrever esse filtro no campo E3TimeStamp via query?