Cancel on interactive selection: how to cancel the procedure ?

Hello everyone,

I recently built a procedure for interactive selection, started by trigger on the screen, in order to force the user to restrict his/her selection before loading any data.
This is because it would otherwise generate too big reports.

So in the procedure there are several interactive selection steps, on different dimensions. It works quite well in the normal case.

 

BUT (as always) : if the user cancels a selection, then the procedure stops, and the layout starts refreshing anyway (with a very big data space).

Does anyone have an idea how to manage that ?

 

Etienne

Answers

  • Daniele Di Lorenzo
    edited March 2020

    Hi Etienne CAUSSE

     

    in such cases I set an ATO pager with the only purpose to avoid the layout refresh when opening the screen .

    So the user can narrow the select before refreshing the layout.

     

    The pager is set on a "high level" entity to cover all cases of possible analyses. 

     

    I personallly quite never use triggers, I don't like them.

     

    I attach an example related to a report by transactionimage

     

     

     

    hope this helps

  • Thanks Daniele Di Lorenzo, I need to explore this kind of solution.
    In my use cases, a pager is a bit annoying because very often the end user needs several items to obtain the perimeter he wants, so an "ATO selector" would be more adequate.

    But if I understand your example, you request the user to make all his selections (including multiple), and then use the last ATO pager as a kind of "refresh" button ?

  • Yes, you understood correctly.

     

    I develop this solution to manage cases as yours: "very often the end user needs several items to obtain the perimeter he wants"

     

    I should have opened an idea some time ago about having the possibility to disable the layout execution  when opening the screen , and allow users to tun the execution when they want

  • Hi Daniele, thanks.
    To be consistent, we should have two options in this kind of situation:

    - screen level : disable refresh when entering the screen (workaround possible with trigger and an empty procedure);

    - selector level : disable refresh after selection 

    Then we can manage big reports with a "refresh" button after the user has selected the smallest possible perimeter.

  • I agree

     

    I search in ideas and I've never opened this topic, maybe it was just in my mind

    No time now to do this, if you open an idea about this function I'll vote it immediatly!

     

    thanks and have a nice day

  • Hi Etienne,

    you can add kind of check if to many elements are selected. Just use a dataflow that writes a 1 into a cube and than check with if than else if the total of the cube is bigger than eg 10. if yes message with please select less than 10 elements, else go on with the procedure. with that solution you should be aware that it can be also used in a multiuser context eg with user entity in the check cube.

    Regards

    Felix Csanady

  • Hi Felix,

    I already tested this kind of idea, but if the "if then else" action is not executed because the interactive selection before is cancelled, then it does not work, does it ?

  • Hi Etienne,

     

    yes you're right, the procedure stops when you cancel the interactive selection.

    To avoid the execution of the layout, you could enable in your trigger the checkbox "Disable initial layout execution".

    Than you could have a Label on the screen that says, you have to select something. That label should only be visible if a cube that you write at the beginning of the select procedure does not have any value, means that the cube gets in the beginning eg a 1 and at the end of the procedure (if the user had selected something) it is cleared.

    And if the user hadn't anything selected the label is visible and also a button where he can start the select procedure again.

     

    Regards

    Felix