cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Schwerzmann
Frequent Visitor

Call OnStart again

Hi Community

 

During our app start, we are loading some stuff into collections with the "OnStart" routine. Now, I'd like to be able to call this App.OnStart over again out from the running app. Is that somehow possible?

Kind of

MyApp.OnStart()

 

Thanks

Alex 

1 ACCEPTED SOLUTION

Accepted Solutions

@Schwerzmann 

 

Power Apps Component Framework or PCF or Code Component is very advanced as you are working close to a level of how Power Apps itself was made, and you must use code when you make a code component.  There is also this kind of simpler Component you can try but we do not think you can force an OnStart to run elsewhere with that one. Also from a quick glance at this we are not sure that even a PCF component could force the blocks of code to be reusable in this specific way you propose here. For example, we are not sure even a PCF component could be used to create an "eval like" functionality Set text field data type as "Expression" to interpret mathematical formulas, add Calc() and Eval() F... but it happened to be something in the back of our mind to check on in case. If you are very interested in this sort of thing maybe we could check on this for you with a deep investigation, if so you can let us know in case you are interested,  but note that any and all kinds of PCF project related investigation we may or may not be doing for Community is on much more limited basis than the other type of issues, please keep this in mind. Also, though we can only be sure upon deeper investigation, we suspect we could not use even PCF  to force the eval like functionality, nor to specifically force an OnStart to be runnable from somewhere else.

 

Check if it helps the above @Schwerzmann 

 

 

View solution in original post

5 REPLIES 5

@Schwerzmann 

 

This is not allowed and it is also not supported, that is a special property which is run at the very beginning of the App, and only certain things can be done there. While this property can as of more recently be tested in the editor by clicking "Run OnStart" from the "App" element  ellipses in the Tree view (there was a time when this was not possible), even so this specific property's Formula(s) has/have always been best tested (in our opinion) in the Play mode specifically (i.e. outside of Power Apps Editor, the real Play mode) - that's how special this property is. 

 

You should take the entire Formula and repeat it again from where you want to use it in the App.

 

Or to call it again, just have the app launched again from the beginning, this will call it "again" (but to do it in the sense you may have wanted, just repeat the Formula from the relevant Property elsewhere in the App other than OnStart)

 

If you really want to be able to make this kind of reusable call you can submit this for feature consideration in the Power Apps Ideas section. However before you do that, make a note that using Formulas in one place does not necessarily do the same thing as using it from another place - so such a feature may create ambiguity unless it were crafted very carefully by Microsoft and in very specific way to make sense for Power Apps.

 

Note that also for example, using Variables in some cases is not the same as repeating the same expression again inline, sometimes it causes a delay in updating the values for some specific use cases - this is another example where what seems like "Repetition" from a traditional programming sense, can actually instead be the better way to do it from Power Apps. If there was a reusable expression feature, it would have to be made very differently in Power Apps than perhaps what you may have in mind for a traditional programming language. This is a low code platform and the underlying architecture is abstracted away, and things that seem like they do the same thing from a traditional programming mindset, do not necessarily do the same thing in Power Apps, this is by design. The platform is not intended to be a programming language or to specifically be identical to an IDE or to using Notepad, it is intended to be in some cases an alternative to doing these things and using this platform to achieve this at higher productivity rate and without needing to use raw coding and other considerations of traditional full stack development, and instead using simpler Formulas and other features of a full-featured Power Apps Studio editor.

 

While most of the "Don't repeat yourself" and other principles might still apply in many cases, some of them simply cannot apply because they are not technically a "repeat" in the traditional sense, so they do not apply sometimes in Power Apps for specific objectives and cases. Your specific query is an example where in our opinion it does not apply and you should just repeat the formula again inline from elsewhere in the App.

 

Check if it helps @Schwerzmann 

Hi @poweractivate 

 

Thanks for the fast and extensive answer.

 

I do understand that I do have to pay attention to new paradigms.

 

But, still, one last question: is there then a way, to put some - really 1:1 copies of code (and proven doing the same whether in OnStart or in an other property) - into kind of a code component and call it there? In the sense of a code-only function (with no GUI part)? I've seen some stuff on Code components for canvas apps - Power Apps | Microsoft Docs but it seemd quite instable when experimenting with the GUI components and not very mature yet.

 

Also, I don't understand in this explanation how to code my own function - they are talking about an import.

On the other hand, this documentation here Create your first component using Power Apps Component Framework - Power Apps | Microsoft Docs sounds too adventurous for a low code environment to me. Is this the way to go to have nevertheless reusable code fragments within Power Apps?

 

Thanks

Alex

@Schwerzmann 

 

Power Apps Component Framework or PCF or Code Component is very advanced as you are working close to a level of how Power Apps itself was made, and you must use code when you make a code component.  There is also this kind of simpler Component you can try but we do not think you can force an OnStart to run elsewhere with that one. Also from a quick glance at this we are not sure that even a PCF component could force the blocks of code to be reusable in this specific way you propose here. For example, we are not sure even a PCF component could be used to create an "eval like" functionality Set text field data type as "Expression" to interpret mathematical formulas, add Calc() and Eval() F... but it happened to be something in the back of our mind to check on in case. If you are very interested in this sort of thing maybe we could check on this for you with a deep investigation, if so you can let us know in case you are interested,  but note that any and all kinds of PCF project related investigation we may or may not be doing for Community is on much more limited basis than the other type of issues, please keep this in mind. Also, though we can only be sure upon deeper investigation, we suspect we could not use even PCF  to force the eval like functionality, nor to specifically force an OnStart to be runnable from somewhere else.

 

Check if it helps the above @Schwerzmann 

 

 

Hi @poweractivate 

Ok, thank you for the further hints. That goes a bit too far for my development skills. I think, I'll just keep it as kind of double code attached to my properties of buttons etc.

Thanks for the help

Alex

CMSGuy
Helper I
Helper I

I also wish there was an App.OnStart() Function to run from a button.  Sometimes I just want to reset a form back to the beginning and this would be an easy way to do it without duplicating code

Helpful resources

Announcements
Power Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Community Call Conversations

Introducing the Community Calls Conversations

A great place where you can stay up to date with community calls and interact with the speakers.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

Top Solution Authors
Top Kudoed Authors
Users online (2,634)