Fetch a List of PowerApps across Environments

One of the challenges I’ve faced when using the Power Apps Admin Center is getting a quick view of all the apps within all environments for documentation purposes. Sure, you can go into each environment's Admin Center and view the apps, but this is not efficient. Even worse, from there, there's no way export the a list of the apps! To solve this, I explored several options before landing on the approach I describe below. First, I tried PowerShell with the Get-AdminPowerApp cmdlet—but that only returns Canvas App data. No Model-Driven Apps in sight. Then I turned to…

Comments Off on Fetch a List of PowerApps across Environments

Automated Azure AD Credential Expiration Alerts

All secrets and certificates created within Azure App Registrations have expiration dates, making it crucial for administrators to stay informed to take timely action. Microsoft does not provide an automated notification for this. However, by leveraging Microsoft Graph API and Power Automate, you can set up automated alerts to notify when secrets and certificates are nearing expiration—or have already expired. Below is an example e-mail of expiring and expired secrets and certificates generated by Power Automate: The end-result in e-mail showing expiring secrets, expired secrets, as well as an a csv export of all secrets. Requirements You'll need…

Comments Off on Automated Azure AD Credential Expiration Alerts

Cancel an Approval of Behalf of Another User in Power Automate

Using the Approvals Connector within Power Automate is a great way to streamline approvals, as it provides a lot of functionality out of the box. One limitation it has however is the ability to cancel an approval on behalf of another user. For that, we need to use Power Automate and make an update directly in the Approvers table record. Example - Purchase Order Approval Request Using a Model Driven App, I have an IT Inventory tracking system where I need to submit Purchase Orders for manager approval. When the flow button is pressed in the app, the…

Comments Off on Cancel an Approval of Behalf of Another User in Power Automate

Calculate Age using PowerApps

On the surface, the calculation for a person's age in PowerApps seems simple enough: use the DateDiff function to take the current date and the difference between their birthdate and return in years. However, in PowerApps, it's not quite so straight-forward! For example, let's say the current date is 6/5/2025, and someone's birthdate is 7/4/1989. Using DateDiff: DateDiff(Date(1989,7,4),Date(2025,6,5),TimeUnit.Years) The function returned 36 and not 35 like we would expect! The person wouldn't be 36 until it's 7/4/2025. Turns out, the PowerApps DateDiff function behaves differently than it's Excel counterpart. Unlike DateDif function in Excel which, by default, calculates…

Comments Off on Calculate Age using PowerApps

Get SharePoint Column Descriptions into a PowerApps Form

Within a SharePoint list, it's common practice to add a description to your columns. Naturally, you would want to provide a description to aid users in filling out the form. The out of the box form experience in a SharePoint list will display descriptions automatically. However, if you're building a Canvas PowerApp using the Form control, you’ve probably noticed the descriptions are missing. Frustrating! The description fields are present in the default SharePoint list form. The same list connected to a PowerApps Form...no descriptions show. 😐 To address this limitation, I’ve seen some workarounds—like hardcoding the description directly…

Comments Off on Get SharePoint Column Descriptions into a PowerApps Form

PowerApps Essential PnP PowerShell for SharePoint Provisioning

When importing PowerApps SharePoint-based solutions into upper level environments (such as from development to test environment), it’s typically necessary to provision a dedicated site and the lists that each environment will use. Unlike Dataverse solutions where importing a solution automatically creates the tables in the target environment, SharePoint sites and list resources are not. This gap led me to ask: what's the most efficient, programmatic way to create these SharePoint resources? Well, since you’ve read the title, you probably know where this is going: PowerShell PnP to the rescue! I'm going to assume you already have the SharePoint…

Comments Off on PowerApps Essential PnP PowerShell for SharePoint Provisioning

Format Date and Time to 12-Hour AM/PM in PowerApps Forms

When you use a form control with date and time fields in PowerApps, it automatically generates a data card with a date picker, plus two dropdowns for hour and minute—in 24 hour time. Now, I don’t know about you, but here in the U.S., where we’re used to the 12-hour AM/PM format, it’s kind of surprising that Microsoft hasn’t made this behavior easier to configure! Therefore, I sought to build my own solution to this annoyance by achieving the following goals: Combine the Hour, Minute, and AM/PM format into one single dropdown control. Allow for interval-based time selection…

Comments Off on Format Date and Time to 12-Hour AM/PM in PowerApps Forms