When is retrieved data from the preparation not accesable in the screen anymore

When is retrieved data from the preparation not accesable in the screen anymore

  

Hello,

What is the logic around retrieved data from the preparation that can be selected from the screen or not (using if statements).

When you have an if statement in you're preparation the data retrieved after that if statement isn't available in the screen to select directly (you need to assign it to a local variable). The strange thing is that sometimes you can select the retrieved data directly but sometimes you can't.

I though that it was depending on the if statement condintion. Every thing after the true condition is available in the screen, everything after the false condition isn't, but this also wasn't it. Sometimes I change somthing in the prepartion flow and it's available and sometimes it works the other way around.

Is there any logic on this? It's annoying that when you have a check on the start of you're prepartion (for example: isloadingscreen()) you can't select data retrieved from an public action or query directly in the screen anymore.

Kind regards,
Evert
Hi Joost,

My guess is you're experiencing a bug on your platform server version.
I'm on version 6.0.0.6 of the platform server and haven't experienced issues like the one you're describing.

I'm even using a preparation to 'define' my screen queries sometimes, without going through them at preparation.
(Forcing the user to enter initially enter the search statement and enabeling easy reuse for i.e. excel export)

Cheers,

Eric 
Genotix / @@D wrote:
Hi Joost,
 
 who? :P
Genotix / @@D wrote:
Hi Joost,
 
:-O


Genotix / @@D wrote:
My guess is you're experiencing a bug on your platform server version.
I'm on version 6.0.0.6 of the platform server and haven't experienced issues like the one you're describing.

Hello Eric,

I don't think it's a bug of the platform server (I'm now working on:  6.0.1.14), I have this 'logic' since version 4.2. As I've said, I know it has something to do with if statements, but it doesn't work like expected. Was hoping someone of OS knows the SS 'logic' around these things. I shall see if I got some time to make an example for this.

Kind regards,
Evert
Burgh I always mix you two guys up :P

Ok, let's hope the support team responds.
Hi Evert,

Bottom line is:
  • Queries on preparation are available anywhere
  • Actions will only be available on the sequence of the current flow after the action (that means if you had a spit in the flow, you won't be able to access actions from the middle after the join).
  • In screen actions queries follow the same rules as actions

Regards,
João Rosado
João Rosado wrote:
Hi Evert,

Bottom line is:
  • Actions will only be available on the sequence of the current flow after the action (that means if you had a spit in the flow, you won't be able to access actions from the middle after the join).
Regards,
João Rosado
 
 Hello João,

Do you know why is chosen for this option? In have a lot of public action which just retruns data (like a query would do) but when I do an check in the preparaion (like the IsLoadingScreen()) I can't reach the result of the action anymore. So I got the chance to do 2 things:

1) Assign it to a local variable
2) Set it before the if statement

Both options aren't the best performance option (oke it will be miliseconds sometimes but it's about the idea).

Kind regards,
Evert
Hi Evert,

I think it's related with the data that ends up on the viewstate.
Not that our optimizer wouldn't only place what is necessary, but allowing access to all actions anywhere would cause more uses in places where they would end up in the viewstate.

Don't know if its all the reasons, but it's what was answered to me when I asked a couple years ago :)

Anyway, using a local variable shouldn't have any performance impact.

Regards,
João Rosado
João,

There is something to say for not 'saving' all data in the viewstate :-).

It's just annoying that when I have a flow in my preparation and need some check at the top of the flow, I then also must adjust everything to assign the values to local variables and change it in the screen as well. Maybe something for WotC (for example that everything after the true flow would still be available).

Thanks for the reactions.

Kind regards,
Evert