8 Replies Latest reply: May 31, 2011 8:31 AM by Hervé Vanderheyden RSS

    Automatic action with timer on AjaxZfc

    Hervé Vanderheyden

      Hello,

      I would like to known if Qlikview has a mecanism to perform somes task in qvw without user actions in a specific interval like Timer class in C++.

      eg: Automatic change the customer selection.

       

      Thanks

        • SV:Automatic action with timer on AjaxZfc
          Toni Kautto

          Care to elaborate what purpose such timer driven activities would have for your app?

            • Re. :SV:Automatic action with timer on AjaxZfc
              Hervé Vanderheyden

               

              Hello

              I would like to place a tv at the entrance of the office to show public informations from a .qvw file handled in a browser (QvAjaxZfc). Informations will change automaticaly from customer to sales department... Colleges must have the possibility to get back hand on the app at any time.

              I supposed i have to use some timer to perform these actions...

              Thanks



                • SV:Automatic action with timer on AjaxZfc
                  Toni Kautto

                  My suggestion is that you try using the Conditional Show value, that you can find in Properties for various objects. In this field you simply add an expression that will hide the object when expression result is TRUE and hide the object when the result is FALSE.

                   

                  The simplest is then likely that you work with the Conditional Show on a sheet level, to only show one sheet at a time.

                   

                  For example to show something for 15 min per hour as the second quarter of every hour your conditional show condition could look like;

                   

                  div( minute( now() ) , 15 ) = 1

                   

                   

                  Note: The div() result in this case will be 0-3, hence second quarter corresponds with 1.

              • Automatic action with timer on AjaxZfc
                Hervé Vanderheyden

                Toni, thanks for your help, but it wasn't exactly what i want to do. (but i keep your answers because it solve an other question )

                 

                I would like to change selection in a list, not changing the display of objet

                 

                user_type          user

                --------------          -------

                * sales             * John

                # customer       * Doe

                                       # McGyver

                                       # Anibal

                                        ...

                  • Re: SV:Automatic action with timer on AjaxZfc
                    Toni Kautto

                    Nothing quick and simple pops in to my mind right now. You could probabaly achieve it by using macros, but then again you will not be able to run those macros via ajax.

                     

                    My suggestion would be to still work with hiding the objects. In the object you can alter the presentation by using set analysis in the expressions. For a general info dashboard I would not recommend using list boxes to visualize the data limits, it is much more intuative for a viewer to get the limitation presented in a text box or object title.

                     

                    For example title like 'Sales in 2011 vs. 2011' or 'Revenue for past 10 years' is easier to interpet than having to look in listboxes for what has been currently selected.

                  • Automatic action with timer on AjaxZfc
                    Hervé Vanderheyden

                    - IEClient does not accept a refresh performed by the serveur in a VBA macro.

                    - JavaScript's solution works, I've cloned the opendoc.htm file then rename it. After i've added the folowing script between <HEAD></HEAD> tags:

                    <script type="text/javascript">

                         function reFresh() {

                           location.reload(true)

                         }

                         window.setInterval("reFresh()",60000);

                    </script>