Recently Microsoft announced a new experimental feature in Power Apps: Named formulas
Named formulas in summary are, defined functions without parameters, that can be reused anywhere in a Canvas App.
What are the advantages of using Named formulas instead of global variables (defined with ‘Set’)?
The formula’s values are always available, there is no time dependency as it happens on App.OnStart (if you enabled delayed start, some variables might not have been populated when you try to access their values).
Formula definitions work like constants, they need to be defined in the App.Formulas property and cannot be updated anywhere else in the app
Also, the formula’s output values are only calculated when needed, which will speed up app loading times if you defined a lot of them in the App.OnStart event
How to use them?
Enable Named formulas under experimental features (authoring version 3.22091):
After enabling the feature and reloading the app, add your formulas to the App.Formulas property. You can even add objects as named formulas, for example, if you had an object variable that you used to store all colours for the app and work as the ‘app theme config’ variable, you can convert it to a named formula:
Call or reference them as if they were global variables from anywhere in the app (except for using ‘Set’, so for example Set(myFormula,”Value”) would not work.
In the example below we are using a reference to a named formula to define the button fill color:
And below using a reference to a record to retrieve the last item submitted by the current user. This would also return the latest item Id as the formula values are always up to date, and we don’t need to worry about refreshing their values as we do with global variables:
Conclusion
By using the named formulas feature you can speed up your app’s loading time in case you had a lot of global variables defined on the App.OnStart event, while enabling functions that are read-only and will always have their return values up to date.