Histórico de gráficos

Boa dia,

Estou gravando um histórico de gráficos em uma arquivo .mdb a partir de um script bem simples no Viewer:

Sub Viewer_Grava_Banco()
Application.GetObject(“Hist1”).WriteRecord()
End Sub

Porém, parece que o E3 abre o Access e fica gravando toda hora… nunca fechando ele, pois geralmente quando fecha o Access, o arquivo é compactado automaticamente.

Alguém poderia me ajudar como posso gravar no .mdb fazendo com que ele compacte o arquivo em uma determinada hora? Porque em pouco tempo, o arquivo fica muito grande, fazendo com que não os gráficos armazenados anteriormente (um dia atrás, por exemplo) não sejam visualizados.

@Willian_Kiyoshi_Naka, bom dia.

Você pode seguir este KB: http://kb.elipse.com.br/pt-br/questions/510/.

Após o KB anterior, verificar como o evento “Grava_Banco” funciona. Talvez ele esteja gravando a todo o momento os dados.

Quanto a compactar, pode seguir este KB: http://kb.elipse.com.br/pt-br/questions/2065/. O script relacionado a este KB pode ser colocado num evento OnPreset do TagTimer ou do TagContador a fim de compactar de hora em hora.

Abraços.

Olá Fernando,
Obrigado pela resposta.
O banco de dados está sendo gravado a cada 30s e sendo descartado a cada 3 meses.
Quanto ao evento da compactação ser feito a cada certo período, não estou conseguindo fazer com o que o script do TagTimer seja executado. As configurações deste tag está da seguinte forma:
Enable = False;
TriggerType = Continuous;
RepeatInterval = 00:01:00 (a fim de teste)

Criei um botão para teste que ativa esse TagTimer com o seguinte script:
Application.GetObject(“Dados.TstTimer”).Enabled = True

E no OnPresset do tagTimer está chamando uma popup com uma mensagem (apenas para este teste) e logo em seguinda colocando o “Enabled” do tag para False.

Porém o script não está sendo executado. Estou usando a versão E3 versão 4.6.162.

@Willian_Kiyoshi_Naka, boa tarde.

Para verificar se o script no OnPreset está funcionando, utiliza o método Trace (http://kb.elipse.com.br/pt-br/questions/169/), pois o MsgBox não funciona em scripts do servidor.

Por favor, testar.

Funcionou Fernando.
Obrigado.