Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal tenho este painel abaixo(anexo qvw)
Precisava de uma dica para melhorar a rotina.
de 15 em 15 minutos ele rodará.
Atualmente este bat
Mas ele não esta fechado o qvw anterior.
Bat:
start /wait "C:\Program Files\QlikView" Qv.exe /NoSecurity "C:\postos\painel\painel.qvw"
@echo off
exit
Macro:
Sub Maximiza()
set window = CreateObject("WScript.Shell")
window.AppActivate 0
window.SendKeys ("% x")
' ActiveDocument.Save
End Sub
Sub ExecMacro()
ActiveDocument.Reload
ActiveDocument.Save
End Sub
Alguma dica de como melhorar esta rotina?
Para fechar a anterior não sei como fazer,
mas dá para você já passar pelo start para ele abrir maximizado e dar reload no arquivo usando o /MAX e o /l, eu uso um aqui assim:
START /MAX /W "" %QLIKVIEW_PATH% /l /venvioAutomatico="Sim" "%MY_PATH%\DIFERENCA_VALOR_NEGOCIACAO\DIFERENCA_VALOR_NEGOCIACAO.qvw"
Adicione a linha de macro para fechar a sua aplicação:
ActiveDocument.GetApplication.Quit
Pode adicionar na sub ExecMacro:
Sub ExecMacro()
ActiveDocument.Reload
ActiveDocument.Save
ActiveDocument.GetApplication.Quit
End Sub
Mas Yuri, ele carregar e o painel some.
Preciso que ele fique
O problema está sendo ao carregar o qvw
Ele carrega pelo bat mas não fechar o anterior.
Agnaldo, não é isso que você precisa? que o qvw feche após a recarga?
Da forma que estava, sua rotina não esta fechando porque você não solicita para fechar. Seu bat abre o arquivo e a macro faz a recarga e grava, ou seja, ele vai ficar com o qvw em aberto.
Para fechar a anterior não sei como fazer,
mas dá para você já passar pelo start para ele abrir maximizado e dar reload no arquivo usando o /MAX e o /l, eu uso um aqui assim:
START /MAX /W "" %QLIKVIEW_PATH% /l /venvioAutomatico="Sim" "%MY_PATH%\DIFERENCA_VALOR_NEGOCIACAO\DIFERENCA_VALOR_NEGOCIACAO.qvw"
Eduardo, Maximinizar deu certo obrigado,
Agora preciso, Conseguir
Como ficou o bat:
@echo off
taskkill /F /IM Qv.exe
start /MAX /wait "C:\Program Files\QlikView" Qv.exe /NoSecurity "C:\postos\painel\painel.qvw"
@echo off
exit
Agnaldo,
você precisa que feche o arquivo ou somente que atualize os dados?
você pode por uma macro para ficar dando reload a cada 15minutos.