Episode 301 – Git comes to Power Apps - podcast episode cover

Episode 301 – Git comes to Power Apps

Sep 29, 202239 min
--:--
--:--
Listen in podcast apps:

Episode description

In Episode 301, Ben and Scott talk through some of the announcements from the Microsoft Power Platform Conference, including native co-authoring for canvas apps using Git repositories and named formulas in Power Fx. Like what you hear and want to support the show? Check out our membership options. Show Notes Hurricane Ian Power Apps brings collaboration to center stage with 3 big announcements The new sidebar in Microsoft Edge helps you multitask smarter 🎈✨Setup co-authoring using Git for Power Apps Co-authoring in canvas apps (experimental) What is Microsoft Power Fx? Power Fx: Introducing Named Formulas About the sponsors Intelligink utilizes their skill and passion for the Microsoft cloud to empower their customers with the freedom to focus on their core business. They partner with them to implement and administer their cloud technology deployments and solutions. Visit Intelligink.com for more info.

Transcript

Welcome to episode 301 of the Microsoft Cloud IT Pro podcast. Recorded live on September 26th, 2022. This is a show about Microsoft 365 and Azure from the perspective of it pros and end users where we discuss the topic or recent news and how it relates to you. The power platform conference in Orlando has concluded and there were some announcements that came out of it today.

Ben and Scott go over a couple of those as they discuss the new experimental feature of coauthoring power apps, as well as named functions coming to Power fx. Scott, I have a question for you in light of this week, and this comes via one of my kids, if an old man uses, a slow old man uses a walking stick or a walking cane, what does a fast old man use? A bigger walking stick. Oh, oh yeah. That's a good one. That's coming from the wee ones for sure. Yes. So that is how I'm.

Florida's got a hurricane coming. I think we'll be just fine. I do. We're gonna have, we're we're gonna have just some strong winds and and rain and things at this point. That's what it looks like. Is the general consensus. But the, the west coast could get it a little bit. So if you're on the Gulf, hunker down and be. Safe. We're on the wrong side of it though. We're on the tornado side of it too. We could actually have a few tornadoes. We get tornadoes all the time.

That's true. I did not learn this. So I moved down here though, like growing up up north, like tornadoes, you just get like random tornado warnings and it's just like a tornado. And then I moved down here and I'm like, wait a minute. We get hurricanes and then we get tornadoes with the hurricanes. Mm-hmm. . This is just not, I, I don't know that I'm okay with this. I've been down here 13 years I think, and I'm still not okay with tornadoes in the middle of hurricanes.

Cause you don't get much morning either cuz you can't even see him coming cuz the hurricane radar is messing with all. Of 'em. Well, you should come out to the beach. There's water spouts and stuff all the time. You want a little mini tornado on the water. They're out there constantly. I can come watch 'em. I have never actually seen a water spout. I've never been out there when there's been one. It'd be kind of fun to come watch a water spout sometime. Yeah.

They're down here. Or I mean you grew up in, you know, in the north. I, I grew up in the northeast of the United States, but we lived in Cleveland for a while. So on Lake Erie, same thing you would see, you would always get storms that would roll through and Yep. You, you would absolutely get water spouts all the time on the lake. See. We never got 'em. I don't know if it was where we were.

So I was on the east side of Lake Michigan, I was in Michigan, so on the east side there, a lot of the storms broke up as they went across Lake Michigan. So we didn't get a lot of tornadoes like coming off of the Lake, Lake Michigan or water spouts there. I don't know if you tended to see more on the other side, like over in Wisconsin where like Wisconsin gets tornadoes all the time. Wisconsin gets way more tornadoes than Michigan does because like Michigan breaks up so much of those storms.

Gotcha. Hi. I don't know. Yeah, I don't. Know. What are you gonna do? Uh, I. Mean am going to talk about Viva or don't we talk about Viva or the power platform conference? We have two topics we could talk about Scott. Well let's start with the power platform conference since that's new and kind of top of mind. Do. You mean the power platform conference at all? The Viva Announcements came out at. That's the.

One that's still confused to me, but yeah, Power platform conference was last week down in Orlando. I tried to go to this Scott, I actually, I submitted a couple sessions, got rejected and then I did find out like a week before that there was a way I could have gotten down there for a reasonable cost cheap enough that I would've gone for it. But by that point in time it was too late to reschedule meetings and projects and all of that. So I was not able to go.

But I watched vicariously through people on Twitter and followed blog posts and there were actually a couple interesting things that came out of the power platform conference that were not viva. There were some actual power platforming things. So one. Of them Imagine that. Yeah. What , imagine that power platform things at the power. Platform. Power platform conference. I know, right? So this was an interesting blog post. There was a blog post that came out on the power apps blog.

Power apps brings collaboration to center stage with three big announcements. I don't know that I would call this three big announcements. I would call those two big announcements and one announcement that I'm still not sure I I don't know that I would call the third one a big announcement.

So the one big announcement, one of the big announcements that I'm interested to try and I'm curious to see how this all works, is co-authoring in power apps and they started off developing software, traditional single player experience, check out code to a local branch, blah, blah blah. Power apps has always been one of those single author experiences and even as a single author, the way power apps has worked at times I've ended up with a multiple tabs.

I don't know if you've ever noticed Office 365 in general likes to open lots and lots and lots of tabs. So so many tabs, so many tabs. . So quick aside, I don't know if you've seen the new office bar that pops up if you use Microsoft Edge. So you know I'm, I'm a bit, Does. It pop up on a Mac? I do not have it on my Mac. Yes it does pop up on a Mac. My Mac is broken. It is it it is up in my browser right now just because I'm on a

Microsoft site. I'm not even on office.com. Right. If I just browse. To not. On the site, you know like power users.microsoft.com. Yeah. Uh, any Microsoft site this bar pops up with like an office button. Let's see, what's it, It's got all sorts of just stuff in. It. Is this the one down the right side of the browser? It is. So you end up, if you do vertical tabs like I do Yep.

I think you do vertical tabs as well and you leave them collapsed, you end up with just a bunch of icons on the left and now all of a sudden there's a bunch of icons on the right that I'm constantly clicking the little button and trying to just zoom, you know, zip that in and, and get it away as as I can. Do. You have to be on a Microsoft site for that to pop up. I thought that was at any website.

I, I don't know. I must be like, I must be so vehemently closing it that it just goes away and then I only notice it when I open like a new browser window and go back to a Microsoft site. But it it is, it is there all the time and it is very annoying. Yeah, I had it there somewhere. I've seen it before and then it went away and then I saw the announcement that they added Outlook to it but I think it was only personal Outlook, network outlook.

So I wanted to get it back to just play with it again but I can't get it back. Apparently I so ly closed it. That Edge has said you don't get this ever again. . That's great. It. Is. It's, I'm with you. I uh, so are we switching to this a minute? We can talk about this for a few minutes. I sort of get it in a way that I have very much had one of the scenarios where they talk about where I wanna just quickly pull up my email and having it on the right edge.

Yeah maybe like I get the code, I wanna just pop up in an email. I have it right there. Maybe if I was only in the browser personally, I always have Outlook open on my desktop. I'm not just browser based and even if I was, I think I would have Outlook as a web app. I don't know that I necessarily see the need for this into your point. I feel like I start getting surrounded by toolbar. I have my browser tabs going down the left. I have my address bar and my extensions across the top.

Now I have another bar down the right side and my browser window just keeps shrinking. Next thing you know I'm gonna have some type of toolbar popping up on the bottom and I'm gonna be like framed in my browser experience by toolbar. Yeah, I'll put link the show notes. But what we're talking about is the new sidebar in Microsoft Edge, which is supposedly supposed to help you multitask

in a smarter way. So it's this bar that pops up, it's got a bunch of icons on it that kind of sort of makes sense. Like you mentioned Outlooks there, there's an office icon. It's for search discovery tools, game office and Outlooks. So Gabe is supposed still very. Help me multitask more. Yeah, Smarter multitask. Smarter. Smarter. Yes. So those are all things that kind come to get there.

I, I don't know. So yeah, so now you can access office or the games menu right from your sidebar, you know, because that's what you wanna do without navigating away. If you're somebody who hasn't seen this before and you do want to go see it, uh, a couple of things. You have to make sure that your browser language is set to English or some variant of English. Either British English or US English. Like it's only available to English markets right now. Gotta be on the latest version of Edge.

Interestingly the sidebar will show up automatically or some users, but not for all. I don't know what the logic is there behind it, but if for some reason you don't see it and you go like what are these, what are these people talking about? Like I'd, I'd really like to see how annoying this is myself. You can actually enable it like go into settings, go into more and then there's a show sidebar toggle and you click show sidebar on and it will pop up.

Or in my case like on the latest version of Edge, it's actually just there like once it's turned on, uh, if you go to the little sis right below settings there's a show and hide sidebar that pops up right from there. Got it. Yeah. We'll have to see. I don't know, I'm not sure I'm a big fan of it, which is probably why I figured out a way to hide it a while ago and I don't see it anymore. I don't know what happened to mine cuz I'm definitely, it doesn't even show up in my Canary build.

I have both the Canary Build and the normal production build of Edge and neither one of 'em have it for me anymore. So I don't know what I did. Well. You you're living your best life then. Yeah. I'm curious to see. Like, like I said, I'm, I'm always turning it off. Yeah what other people think. If anybody has an opinion on this, let us know. So now I've all back to power apps, Power apps back, back. To power apps from the side like yeah let's,

let's get back to power apps collaboration. So just to reset, there was this conference, it was the power Apps Power platform conference down in Orlando, blah blah blah. Lots of new things announced there related to the power platform and I think in many cases not related to Power platform but hey it was Microsoft Conference so why not get those announcements out the door. So where do you wanna start? You wanna start with some of these new features like cards or Coauthoring?

Coauthoring is interesting. Let's keep going cuz we've kind of started down coauthoring and then we got sidetracked by the sidebar that's supposed to help you multi-task, which I guess it just did. It helped us multi-task in our podcast and rapidly switch tasks between talking about power apps and sidebar but coauthoring. Yes. Do you feel overwhelmed by trying to manage your Office 365 environment? Are you facing unexpected issues that disrupt your company's productivity?

Intelligent is here to help much like you take your car to the mechanic that has specialized knowledge on how to best keep your car running Intelligent helps you with your Microsoft Cloud environment because that's their expertise. Intelligent keeps up with the latest updates on the Microsoft Cloud to help keep your business running smoothly and ahead of the curve.

Whether you are a small organization with just a few users up to an organization of several thousand employees they want to partner with you to implement and administer your Microsoft Cloud technology, visit them at intelligent.com/podcast. That's I N T E L L I G I N k.com/podcast for more information or to schedule a 30 minute call to get started with them today. Remember Intelligent focuses on the Microsoft cloud so you can focus on your business back to that.

Oh cuz I started talking about tabs because I have locked myself out of authoring before. That's how I got on that topic because Office 365 opens lots of tabs and I've even run into it before with power apps where I haven't opened in one tab and somehow end up trying to open it in another tab and it says it's locked for editing by myself in another session. All of that. , I love when Excel does that. It's great that Power Apps is getting in on the same game. Oh.

Yeah. So apparently now Power Apps is getting out of that game and if you go turn on, this is an experimental feature. So all of our typical do not do this in production stand up a dev environment of power apps cuz you do have environments in power apps. Go try turning this on.

Maybe not on a production app that you use all the time, but when you want to test out all that stuff, you can now turn on this experimental co-authoring feature and as you are building the app and somebody else is building the app, you can chat with each other. Now you can tag people in comments. So just like if you're co-authoring an office document and you were tagging people there or commenting on an office document, you can do the same thing in power apps.

You can see changes that others are making in real time. So now instead of sharing the screen and jumping at a meeting and one person driving and everybody watching it, everybody can add edit, remove various components and everybody sees the same thing. I kinda wanna get in here now and just mess with somebody making a power app and just randomly start moving stuff and deleting stuff. I don't know, I haven't had a chance to go try this yet.

I think this one's a little weird. Yeah. Um, and mostly just because the way it's kind of, I, I think strapped in, so you mentioned get, and I I think it's important to call out that this works with any compatible source code repositories. So whether that's actually like gethub.com, it could be something like Azure DevOps, it could also be another kind of third party get thing that

just implements, you know, get in a, in a, in a logical way. Like you're, you're all good there, you can turn this on for a, any new apps or any existing apps. So I think that's kind of cool like you mentioned, hey let's go maybe try it on something we've already done and see if it makes the workflow a little bit better. You can absolutely do that but I thought it was interesting that like the initial implementation of it doesn't support, it doesn't look like it supports OAuth for connectivity.

So if you're doing maybe like federated identity to your GET provider, say you're doing like Azure DevOps and that's federated to Azure ad or you're doing get like GitHub and that's federated out to Okta or Azure AD or something else like that, it doesn't actually support OAuth. So you have to use personal access tokens, , you know, hopefully those are on within your organization. Like sometimes you know those are disabled, they're turned off.

So that in mind like when you're signing into the repo you're like if you and I were going to collaborate on the same one, we'd both have to create uh, Pats personal access tokens and then be able to spin that all up too. So there's potentially a little bit of friction there just to kind of get it boots strapped and get it turned on like hey go turn on this experimental feature, make sure it's enabled for this app.

It's not very clear what happens if I turn it on for an app and then all of a sudden we start sharing it. Like you have to go make a bunch of changes in power apps on your side. Does it just automatically show up? I think that part, you know, probably has some rough edges and it and it probably gets better over time. Right. I would think they would both show up. But yeah, your point because it requires the personal access token and it is coming from

power apps too that Get repository does have to be an online version. It uh, web accessible with username and Pat, like you said on-Premises Get repository aren't gonna work for it. So the other thing that wasn't clear, I don't know if you if you like seen this is you from everything I saw in the announcements, it's a just like a single synchronization button that shows up in the power app like, like in the, in the studio itself.

So in GI quite often you have these, like you just have these concepts that you're pretty used to like I might make a bunch of changes and wanna stage them, maybe I wanna push them to this branch or this branch. I wanna do things like I want to go and cherry pick changes at another branch that it didn't look like any of that was possible here either. It's almost like the get provider is just a remote storage instance which is just like one big sink, like a push and then one big pole.

But you almost have to know on the other side like when to do the push and pull. Like if you and I are working on it together at the same time, then if there is a big merge the entire app needs to reload. Like that could take some time depending on how big it is and and what it takes for your studio to render it out and all that. I'm. A little confused about this as like you said it has the sync button and the sync button says I just had it there.

It merges any current changes with what's in GI to bring the result into studio for further editing. But in the announcement they say it's real time synchronization so is there a little bit of real time sync going on but then if it gets out of sync you need to use this sync button. Like or is that synchronized button the very initial sync but then that wouldn't make sense with merging content change. It's like what's the difference between the sync button?

No idea we, we'd have to play with that and I think it's weird. It seems like it's meant to be one of those auto magical features. So like when it comes to synchronization merging, there's actually no way to resolve merge conflicts right now. So everything is manual. Yep. And that can be a little bit weird.

So like Power Apps studio is basically just, it's making an attempt to do this merge and fix any conflicts based on what it knows about how apps are authored and how you've structured your app. If you get a merge conflict you're actually gonna have to go back and try and sync to I guess an earlier branch or an earlier

commit. I don't know, it's not very clear and and it starts to get strange because a lot of the power of get comes from having potentially that functionality surface directly up to you in the tool you're working. Like if I'm in VS code working on something, I just wanna be able to do like the maybe the get CLI or use an extension directly from VS code. Like I want it all there. And in power apps you're not getting that, you're kind of getting this connection plus a button.

But if you want to do anything else, like say I wanna go work with another PR from somebody else, like I'm working with you on an app and you say hey I've got the PR in here, it is, it's over here if I wanna check that I need to hop out to the command line or some other type of, you know, tool. Like if you're, if you're not a command line person and you're only a gooey person, like well you gotta go find a goey for get, that's gonna get you to where you need to be.

I think like yeah a little little bit of friction there we we'll see like what manifests in I guess maybe Power App studio to make that experience a little bit better. Yeah, we might have to go turn this on and play with it a little bit. Cause then the other thing people are also gonna have to be aware of is they do have this list of known limitations and one of these. The last edit made will win. Yeah. The whole last edit made.

But it's to the same property on the same control that's not merged that one the last edit wins but other changes may merge. So depending on what you changed where and who else changed it, it may merge or it may be a last edit wins. This one in here sounds like it's only if you're gonna go change a property on a control.

So if you have a text box and you're going and changing the hint text or the color of the text or the size, the position, any of those properties on a control and then somebody else does it years just could get wiped out. It's not gonna go try to resolve 'em.

Which I guess it kinda makes sense because it's, that would be similar to both of you editing the same line of code or the same text in a traditional development experience if you're modifying the same property on the same control at the same time where you're going to essentially end up with a merge conflict in that type of scenario.

I feel like I would tend to use this if I had an app that had multiple screens and each person needs to go work on a one of those screens versus multiple people trying to edit the same screen or the same controls on the same screen.

Feel like if you put some of those types of limitations and hey you go work on the new items screen, someone else goes and works on edit, someone else goes and works on the view, you're probably going to set yourself up to have a less likely chance of causing one of those conflicts where something else could overwrite.

Because position is a property if you just drag a control a little bit when you're working on the same screen, you could potentially come up with one of these conflicts I feel like pretty easily if you're working on the same screen. Yeah. Pretty, pretty quickly Or even, you know, I'm just clicking into one of your screens and I accidentally move something around and then you know, I go back to my screen and I hit save and oops, you know we, we went down a path that maybe wasn't the manifest

for us. Yeah. You know, so we'll see. I also wonder what it does, you know, I just wonder, you know, like I said, like a get workflow, typically I'm going to want to make a logical set of changes all at the same time and stage them and then commit that and push it and, and or I may even wanna like commit it locally and not push it up. It just seems like this is taking like a bunch of steps for me

that maybe you don't want to take. Like you said you, you move something on the campus and that changes the property of it, you go change some of the, some of the kind of backend properties on the code side. You might want to stage all that and push it up. But in this case it's, it looks like it's just every little thing kind of going. So I wonder what happens to, like what do those commits look like and then what is reverting look like?

Yeah and there's a, they have a paragraph in here about pull request viewing history blaming and other GI features. I was trying to decipher what this actually means. Cause it says working with pull requests or other GI operations have to be done through get tools like the GI provider's website. That makes sense. We know that based on this there's no option to do some of that in power apps itself. Each synchronization includes a synchronization with changes will result in the commit.

If other changes occur and get by other makers there will be additional commits. So every single change is a commit to merge results of all the changes. No changes will be lost even if a merge would override in edit. So I think what that's saying is you end up with a whole bunch of commit. So if there's a conflict instead of a merge conflict, it's just gonna create a commit that overrides the last commit.

Yeah. So how do I know which commit to go back to if things get into a weird state or you know, I I just think like power app, right? Like take power out of it. Just think app, right? You know, usually you want like a v1 really CV 1.1, a 1.1 0.1, blah blah blah. Like whatever your kind of, you know, major minor patch, you know versioning scheme is for things and this kind of blows that out of the water. Especially if you and I are co-authoring on an application.

Like how do I step back to version 1.1 cuz I wanna go take a look the way we did something in the past. You know, like maybe that was the better way to do it. Or like I said, just like cherry picking things, being able to say like, okay in this commit over here there's this set of changes that I wanna bring in or there's this PR over here that I only wanna bring in this subset of changes. Like it, it's weird pretty quick. Yeah, I don't know.

I think it'll be interesting to see how it goes and, and you know, you talk through it like I just feel like you need to, no matter how much you wanna hide it, you need to start surfacing some of that functionality up in Power App Studio just to make life a little bit easier. Right. Or even on that synchronization, I'm even thinking of basic stuff like let's add a comment so I actually know what I did in this synchronization or the save that shows up

as a comment to my get repo. So to your point I can go back and see, oh this was Ben that added this control or Scott updated this screen. It doesn't look like there's any way to add any type of context to these commits. No. So Power App Studio is not a full featured get client. I, I guess that's the big takeaway, right? It's just a, a dumb sync and commit mechanism up to you a GI repo and a lot of the, you know, I I'd argue like basic functionality that you want as a consumer of

something from a get repo just isn't there today. Yeah. Your mileage may vary depending on how sophisticated you are with get all this kind things. If you've never heard of this before and you go like, Oh cool, it's coauthoring and it sinks and we're just gonna go play with it, then absolutely do that. But if you're thinking about this as, oh my gosh, I'm gonna be able to bring my power app developers over to a similar state as my developer developers, then yeah probably not. They're.

Using a developer tool and trying to obfuscate it in a way that it aligns with low code power user type development. And I think any developer developer is gonna struggle with that significantly to what you just said. There was something else I was gonna say along these lines to get command synchronizations power apps. I have no idea it's gone off into the wind . Well it, it was, it was kind of sort of almost maybe there. Good publishing. Yeah. I don't know what else I was gonna say. All.

Right, so that one's there. You wanna talk since you mentioned, well you know, we're talking about developer things in a non-developer tool. You wanna run down named formulas real quick and then we can kind of close out on that. Sure. So named Formulas was another one, Power. Fx. So somebody asked me a few months ago, Power FX has been out for a while. Power FX in and of itself is not new Power FX in summary is essentially the power platform development

language. It was weird like they came out, they're like power effects, power effects. And I looked at it and I'm like, it's just what we've always been doing in power apps. So that's what power effects is. But they introduced named formulas in power effects, which essentially means you can go use these in power apps.

I think technically this rolls into Power BI and Power Automate too, but I don't know where you'd really use these named formulas because this is what you would do on something like one of your apps that you're writing. And what this allows you to do is when you open your app or when you do like the app on start, I think that's probably where you'd use this the most.

You can do things like define a variable with a aimed formula where you could do something like user email equals user open, close parenthesis.email, it goes and grabs the email of the currently logged in user or you wanna come up with a list of phone numbers, you want to go assemble some string from various user properties. You can go in and define these named formulas when your app starts and then the value of that formula will always be available.

So now anytime I want to use the user email instead of having to go do user per email and go look that up from the connection I can just use user email or user title, user phone, whatever that might be. So you're kind of declaring this, it's a named formula to me it seems more like you're just defining a variable and this is. It's a global variable. Yeah. What goes with this variable, I have done this before by just doing like you can do a set instead of variable

on app start and go do something very similar. This is just, I would say this simplifies it in terms of being able to define these different variables, these different properties that you'd want to use throughout your app as you're writing the app. I think the example they gave when they kind of talked about this and particularly comparing it to set Yep. Makes a good case for just where it makes life easier.

So for something like a set, which you could have done the same thing, you know I have, you know, variable A and I wanna set that to a value like 10. So you'd have to do set variable a 10 and then you know, close your peren and do your semicolon and you're, you're out onto the next one now it just becomes variable A equals 10.

So you've automatically, like you've just taken away the set function and you don't even need to worry that set is a thing like from a pure readability and understandability perspective, like that's just way easier, right? It's less parentes, less things to get confused about should be far, far more straightforward on that side. Yeah, and there are some other advantages to it too. So typically a set, you'd set it and then if something changed, username would be a bad example.

Whoever signed in's always gonna have the same username. But if you're doing this based on some other control or some other value, the formulas value does automatically update. So it can perform a calculation dependent on some other properties and as those properties that are in this formula change, the formula's value will also automatically update.

So you don't need to go in and always do, set the variable to a new value or update the variable or not the variable, but technically the formula's value that will automatically change. You also know that the definition of it is immutable. So if you define it in apps dot or app formulas is where you would define these. That will be the only place that value can be changed.

So I know I've lost track of this before too, where you end up maybe using the same variable aim inadvertently, or you have sets on a whole bunch of different screens and you start losing track of what's getting updated, where by what controls and what buttons. This is gonna help you avoid some of that confusion and that it's only ever going to be defined, updated from that single spot within your app. That's gonna be an an advantage I think to this.

It's something that just makes it easier overall when you start defining these, making sure they stay up to date. So they have, there's a quite a good length article on the introduction of these, how to start using 'em, some different implications. So there's also some implications where this comes in. They're changing some of the on display, on start, start screen.

Some of those properties when a power app launches, I think it was, I think I saw it was to help with some of the speed, some of the pre-loading of stuff where things get loaded in the order. So there are some different implications that come into here and how you set some of the stuff up, some of the other examples further down too of like you said Scout, where you would use that in.

You can use this and it just makes it a little bit easier to read, easier to take a lot of those set calls and translate 'em to these named formulas. Uh, so yeah, this one was kind of cool for me. This is one I'd like to go in and I feel like I'd use this before I use co-authoring. Maybe it's my use case, but I like this one. The next thing I wanna see in power apps as functions, like I wanna be able to define a function and call it from different places.

So we got named formulas, maybe we'll get some named functions next, but I don't know, maybe that's getting too developers. Scott, if we start putting functions in power apps, it. Gets weird. So these are kind of like if you've played around with Lamb does and Excel, you end up with this world where you have user defined functions that you know basically have no inputs and you're doing the same thing over

here. So a named formula is really just, it is a function, it's a user defined function, but it doesn't have any parameters on it. So really what you want is a function or method that you can call with your own parameters on top of it. Something like that. Or I have a perfect example and I found a workaround for this. I have a power app, I've built a couple power apps to create new users and when you create a new user via Power Automate in Azure ad you have to send the password.

So I wanna function to generate a random password and I've come up with a whole series of steps to generate a random password. The only way I can kinda like automatically generate it is I use a button and I actually use code to call a button click and then I just make the button visible on the page so that every time you go do something, you're just silently clicking this button in the background to go generate a new password.

I don't see how a named formula would fit into that model because there wouldn't be anything changing that would cause that named formula to generate a new value. Because I would set it at the beginning, but none of the arrays or anything that I'm passing into it would ever change. It's just on this event, go run these 10 lines of power effects code to go randomly select new letters and characters and numbers and all of that from these arrays.

I wonder how many hidden buttons are in all these different various power things. Like, like you're talking through that. I go, I, you know, I do have that all the time in Power bi , like hide hidden controls just for like bookmarking or things like that to, or this button's gonna call, this hidden thing is gonna do this hidden thing and yeah. Yes. Hidden buttons and power apps are my friend. Go look at my power apps.

You may never know how many buttons are actually in a power app that are all just hidden to call functions. This is my function hack and power apps. It's. Like the old, the visual basic designer. Like I remember doing Visual Basic in the early days and you would just have a button, a bunch of buttons that were off the form, but they would still technically be part of the application. Yes. That you were rendering. We just aged ourselves. Got visual basic.

Yep. Yeah, you ended up with one One by one pixel just for a single button and then you made it the same color as the background of the form. And I. Had a professor in college that loved Visual Basic. So Visual Basic Six was on its way out when I was in college and it was switching to, what was it like visual, what came after visual Basic visual.net or something. You had vb.net, like the whole.net kind of thing.

And then you had to choose if you were doing basically like the desktop, like console app, Desktop app track, yeah. Versus like asp.net and starting to go down and, and alright, so I'm gonna get away from like ASP and Visual Basic Classic over vb.net. Yes. Like that. So college was when that transition was occurring and I had a professor that loved VB six. So we did a whole bunch of homework assignments in VB six and we're like, but this is college. We're supposed to be learning real world.

Why can't you transition all this to vb.net and get us ready for the workforce? And now neither one of 'em are used anymore. But that's an entirely different story. . Oh, I bet, I bet. Visual basics still use someplace. Oh, I, you know, you, you can if if COBAL is kicking around, VB is to. Fortran. I never had to write Fortran. I just missed, I don't know that I ever wrote um, Cobalt either. I think there was maybe a one class when I was in college where they still had

some of those old languages kicking around. But nope, never wrote either of. Those. You lucked. Out. I did. So with that, Scott, we did not talk about Viva. . Next time, next time we'll talk about. Viva. Next time we'll talk about Viva. Oh, can I talk about Viva? We will talk about Viva or we will rant about Viva or we will lament about Viva. I don't know which, but we will have to come back to Viva at some point in time in the future. Now. We gotta do.

It. So with that, go enjoy the rest of your day, the rest of your week. Hopefully the hurricane stays away enough that you don't need to go pick up your entire backyard and anything that may blow away in the hurricane. And we will talk to you towards the end of. The week. All right, thanks Ben. Thanks. Scott. If you enjoyed the podcast, go leave us a five star rating in iTunes. It helps to get the word out so more it pros can learn about Office 365 and Azure.

If you have any questions you want us to address on the show or feedback about the show, feel free to reach out via our website, Twitter, or Facebook. Thanks again for listening and have a great day.

Transcript source: Provided by creator in RSS feed: download file