Relatório com E3chart sem ter um E3chart na tela

Estou tentando montar um relatório com Elipse E3 6.5, não é possível ser o novo modelo de relatórios.
Esse relatório tem uma tabela e um gráfico. Esse gráfico E3chart está na parte do PageHeader.
Usei como base o kb63563.

Mas ao executar o relatório pelo studio tenho o seguinte resultado:

Mas quando executo a aplicação da erro no relatório

Error 5800 : Scripting Error.  

[ Extended Info:Scripting Error. [ Extended Info:Section : PageHeader , Event : OnBeforePrint , Line number: 8 Description:]]

O script é igual ao do KB
Sub OnBeforePrint
Set Chart = Report.Sections(“PageHeader”).Controls(“E3Chart1”) 'Armazena o caminho do E3Chart na tela na variável Chart
Set Consulta = Chart.Queries.Item(“Consulta1”) 'Armazena o caminho da consulta do E3Chart na variável Consulta
Consulta.SetVariableValue “DataIni”, Application.GetObject(“Dados.DataIni”).Value 'Define o valor da variável DataInicial do filtro
Consulta.SetVariableValue “DataFim”, Application.GetObject(“Dados.DataFim”).Value 'Define o valor da variável DataFinal do filtro
Consulta.Execute() 'Executa a consulta com o filtro
Chart.LoadData() 'Carrega o resultado da consulta dentro do Chart
Chart.FitAll() 'Organiza para que nenhum dado fique fora dos eixos
Chart.HorScaleBegin = Application.GetObject(“Dados.DataIni”).Value 'Define a data inicial do eixo horizontal
Chart.HorScaleEnd = Application.GetObject(“Dados.DataFim”).Value 'Define a data final do eixo horizontal
End Sub

Tenho as duas tag’s e já manipulo elas para criar ou vizualizar o relatório.

Crei outra tag em Dados, DataIni2 e DataFim2 assim ao executar a aplicação não tive mais problemas de erro de script mas o resultado é o mesmo as datas da consulta não vão para o gráfico.


Da para notar que criou uma linha do maior valor do grafico, e o eixo vertical tem o maior e o menor valor da consulta.

O botão gera o relatório tem o seguinte script:

elseif Application.Item("Auxiliares").Item("TipoRelatorio").Value = 3 then'"Relatorio de Irradiação"7

HoraInicial2 = day(Screen.Item(“Grupo3”).Item(“DataInicial”).Value) & “/” & month(Screen.Item(“Grupo3”).Item(“DataInicial”).Value) & “/” & year(Screen.Item(“Grupo3”).Item(“DataInicial”).Value) &" 00:00"
HoraFinal2 = day(Screen.Item(“Grupo4”).Item(“DataFinal”).Value) & “/” & month(Screen.Item(“Grupo4”).Item(“DataFinal”).Value) & “/” & year(Screen.Item(“Grupo4”).Item(“DataFinal”).Value) &" 23:59"

Application.Item(“Relatorio”).Item(“Horas”).Value = Screen.Item(“Grupo3”).Item(“DataInicial”).Value &" 00:00"
Application.Item(“Relatorio”).Item(“Horas2”).Value = Screen.Item(“Grupo4”).Item(“DataFinal”).Value &" 23:59"
Application.GetObject(“Dados.DataIni”).Value = Screen.Item(“Grupo3”).Item(“DataInicial”).Value
Application.GetObject(“Dados.DataFim”).Value = Screen.Item(“Grupo4”).Item(“DataFinal”).Value & “/”
Application.Item(“Relatorio”).Item(“Horario”).Value = now

if Screen.Item("ComboBox1").Value = "Dia" then

Set ReportID = Application.LoadReport("[Irradiação_Dia]")
ReportID.Item("Consulta1").SetVariableValue "DataIni", HoraInicial2
ReportID.Item("Consulta1").SetVariableValue "DataFim", HoraFinal2

Application.GetObject(“Dados.DataIni”).Value = Screen.Item(“Grupo3”).Item(“DataInicial”).Value
Application.GetObject(“Dados.DataFim”).Value = Screen.Item(“Grupo4”).Item(“DataFinal”).Value & “/”
ReportID.PrintPreview()
Screen.Close(Code)

elseif Screen.Item("ComboBox1").Value = "Hora" then

Set ReportIH = Application.LoadReport("[Irradiaçãa_Hora]")
ReportIH.Item("Consulta1").SetVariableValue "DataIni",HoraInicial2
ReportIH.Item("Consulta1").SetVariableValue "DataFim",HoraFinal2

Application.GetObject(“Dados.DataIni”).Value = Screen.Item(“Grupo3”).Item(“DataInicial”).Value
Application.GetObject(“Dados.DataFim”).Value = Screen.Item(“Grupo4”).Item(“DataFinal”).Value & “/”
ReportIH.PrintPreview()
Screen.Close(Code)

else
MsgBox "Selecione a base de Tempo"
end if

Você está usando dados históricos ou em tempo real ? Se for em tempo real já tive problemas e não é possível exportar esses dados em relatório.

Dados históricos.

Ate onde consegui entender o problema está aqui não consigo passar o filtro para o eixo horizontal.
Chart.HorScaleBegin = Application.GetObject(“Dados.DataIni”).Value 'Define a data inicial do eixo horizontal
Chart.HorScaleEnd = Application.GetObject(“Dados.DataFim”).Value 'Define a data final do eixo horizontal
End Sub

Essa parte do código que você mandou é sobre o limite superior e inferior da escala, dê uma olhada nesse kb: https://kb.elipse.com.br/kb51478-configurando-e3chart-para-mostrar-apenas-o-periodo-desejado/