I have been asked to build a sheet in QlikView 8.5 that displays information from a live database feed. The feed updates my database once a minute and so I need to perform a automatic reload every 60 seconds.
In order to solve the problem I created a variable linked to the time. I set a variable even trigger so that when the variable changed it would run a macro that would check to see if a full minute had passed. If it had passed it would run a function that performed a reload. This causes QlikView 8.5 to crash regularly.
Is it possible to reload the data every minute in QlikView 8.5, or is this an issue I would need QlikView 9 to solve.
Thanks for any help,
It doesn't look like a good idea, at least in QV 8.5.
If you're using now() function to trigger the reload process - it will be checking time every second, and take the CPU time. I'd expect it to crush often. It is better to to run your application on QV server and use scheduled reload by Publisher.
Next, make sure that the reload process itself takes reliably less then one minute. And the last but not the least, the permanent reload makes your database server work hard and it may slow down other database users.
Maybe QV 9 "real time push" may help, but I don't have any experience with it yet.
thank you very much for you're reply. I'm going to investigate what ClikView 9 will be able to do as I can download and play with it for free and we don't have QlikView Publisher.
I have a feeling that although I can dynamically update the data in QV 9, without using the now() function I won't be able to trigger it every minute, but we shall see.
Did you have any luck with this? We're trying to accomplish something very similar, although a reload of every 15 minutes is sufficient for our data. We too are using the now() function inside a variable =minute(now()). and on change of that variable run a macro.
Which looks at the current minute and if its, 0,15,30,45 do a reload. It sometimes works, othertimes fails, mostly just crashes! Oh and that's on 9.0
Any ideas anyone? We don't have the server version and aren't looking to purchase it either! Any help is GREATLY appreciated!
Rather than use the Now() operation to trigger the macro - we changed it to fire a macro upon leaving the active sheet.
We have 3 sheets on our Callcentre display which rotate every 20 seconds - using conditional show.
Auto sheet reload is now working nicely! Let me know if you want an example.
Perhaps you can try to reload your app using a batch file scheduled every minute on windows scheduler. We have such refreshes running at 5/20 min intervals. As said in an earlier reply, you just need to make sure your document reloads in less than 1 minute regularly.
if this isn't so, you can perform a partial reload on your document which only refreshes the one table you want. But this obviously depends on your data architecture.
This reload/partial reload works since V7. Not sure how V9 supports 'Real Time' any more than 8.x does. 8.x already has the option to refresh documents, see document properties : server.
We're still evaluating QV9 and are just in the process of installing QV9 test server to see what options are available in that.
In QlikView 9 there aren't any convenient ways of doing the minute refresh.
There are some interesting posts from SiRoberts and Alal which may be solutions which I'm going to look into as well so thanks for those guys 🙂
I'll keep you posted and let you know what I find out,
siroberts, as I started reading this thread, I thought to myself, "I wonder if it could be triggered when showing a sheet? I may have an idea..."
It's cool that the sheet rotation thing can be used to trigger macros and reload on a regular time interval. It could open up some interesting possibilities.
I've included our Dashboard screen that rotates the 3 sheets, and every x minutes reloads online!
Let me know how you get on!
We're gonna have lots of things to do with this QlikView - so far so good
siroberts - thanks for uploading that. I'm trying to solve a similar problem here but for some reason can't get it to work. I only have 1 sheet and need a way to update it every minute or so. I've tried using a similar macro to your "ReloadData" with second(now)) as the variable but it doesn't work.
Any help\ideas would be greatly appreciated.