Add support to Flow Variables

By Marcelo Pecenin on 11 May 2015
Flow Variables would be defined and used inside a Web Flow, this means, the visibility of this variable is only inside the same web flow, in the Interface Layer, and when needed outside, it is passed as a parameter to, for example, an user action or component. I believe this will allow a better isolation between Interface and Business Logic, which can be shared (public) with others applications, while maintaining the flexibility to use on different pages of the same web flow, and also eliminate the need to worry about the session variable name defined for different web flow, it could be the same.
Actually, the platform will control and stored Flow Variable in the session, but with a distinct "real" name, and limit your visibility to a flow scope.
J.13 May 2015
I am confused what the use-case could be?

I cannot see  the advantage for now
Marcelo Pecenin17 May 2015
I normally design a web flow as representing (implementing) an application use-case.
So, I try to list some advantage of flow variables:
- Control scope (visibility) only inside web flow, similar to JSF FlowScoped, not so restrict like local variable, but with a good isolation from others use-case, i.e. others web flows.
- Avoids direct use in places like user actions (logic layer), unless passed as a parameter, so the logic is prepared to be shared (reused).
- Allows create flow variable with the same name, but in different flows, just like local variables does on pages. For example, lots of web flows have its own screen_list with an input field to search, this field could be attached to a flow variable called 'SearchKey' in each flow. No worry about defining a different name or selecting the right variable in SimpleQuery/Aggregate, only the correct variable will be visible.