top of page
hero-bg-1.png

Search Content

181 results found with an empty search

  • Building a Vacation Request App in Power Apps, Approvals without Flow

    In this blog post, we're going to do a high-level overview of Shane’s Vacation Request app. By understanding why he built the app the way he did, it will help to piece everything together. If you would like a step-by-step breakdown, make sure to check out the video below: Understand The Functionality Used First off, and this is important, many of the things you will learn in the video can be applied to all different kinds of apps, which I think gets lost sometimes. So try to also watch the video from that perspective as well. Whether it be the approval process, deep-linking, the controls and galleries, or how the screens are set up. All of these techniques and functionalities can be applied to many different kinds of apps, timesheets, inspections, employee reviews, etc. You may not be building a Vacation request app, and that’s fine, but understanding how the functionality is used and how it could be reused is very important. The Breakdown In the video, Shane walks you through building a vacation request app with approvals, WITHOUT POWER AUTOMATE. He incorporates email notifications and deep-linking so users can easily find and approve/reject requests. This is very important from both a functionality and usability perspective. He also includes modern controls to give the user a simple, clean, easy-to-use design.   No Flow? No problem!  By eliminating a flow(s) from the equation, it keeps everything in one place, the canvas app. This can be important when building apps for both internal use and customer projects. If you were to go the flow route, there would then be another tool that would need to be maintained. So, keeping everything in one place, the Power App, it makes things easier to manage. Important to note:  I’m sure you have either heard of or used the out-of-the-box Approval flow in Power Automate, which isn’t a bad thing. But many times when customers come to us about creating an approval process, we like to share both approaches and let them decide which route to go with. One con of the Power Automate approvals we sometimes bring up is that they are less customizable, and sending reminders can be more difficult. Reminders are not impossible with the approval flow by any means, but can require more steps in the flow to ensure they run as expected, which also adds more complexity. Deep linking magic.  By incorporating deep-linking, which is generally highly recommended for approval-type apps, users can hop directly from the email or button straight into the exact screen they need. This is important when building apps where managers, finance, CEO’s, etc, will need to review something. You want to make it as easy as possible for them to find what they are looking for without clicking through several screens and buttons. Deep-links are embedded in the Office365SendEmail.V2 email, so you will have full control over the email subject, body, formatting, and so on. The app also includes the ability to send reminders, which is a much simpler approach in Canvas apps. Modern, stylish visuals.  By incorporating modern controls and some cool visual flair into the app, you are giving the users something they will want to use. Design and a clean interface can sometimes feel like an afterthought, but it’s actually very important for the user experience. Now you don’t need to go crazy and try to create the greatest-looking app of all time or anything. But being conscious of your users as you are building will help you to create an app that users will want to use. It’s always a good idea to ask yourself a few questions: “Would I want to use this app?” and “Could I just open the app, and understand what I am supposed to do?”. Most apps shouldn’t require extensive end-user training; they should be simple and straightforward in what users are expected to do.     In a Nutshell… Hopefully, you found this breakdown both informational and helpful. Again, the full video is linked above if you want to watch it and get the step-by-step breakdown. As always, if you have any questions or need any Power Platform assistance, just reach out to us; we're always happy to help.

  • No round() in Power Automate? Here's What to Do Instead (Plus Advanced Math via MathJS)

    If you’ve ever tried to round numbers in Power Automate, you’ve probably discovered something annoying:  there’s no built-in Power Automate rounding function. That’s right. You can’t just do: round(3.14159, 2)   …because it doesn’t exist.   But don’t worry - there are workarounds. And suppose you’re looking to go even deeper with math operations (logarithms, powers, roots, algebra). In that case, there’s a powerful solution using the open-source MathJS library included in this blog post as well.   How to Round Numbers in Power Automate Even though there's no official Power Automate  round()  function, you can still round numbers using the  formatNumber()  expression:   formatNumber(3.14159, '#0.00')   outputs  3.14 .   Need a whole number? Just drop the decimals:   formatNumber(3.14159, '#0')   outputs  3 .   This works great for formatting and even for use in simple logic conditions. But if you're doing deeper numeric operations, this approach has its limits. Want Real Math? Create a MathJS Custom Connector For anything beyond basic formatting - like:   round(2.717854, 3) → 2.718 pow(5, 6) → 15625 log(10000, 10) → 4 sqrt(4) → 2   You can even use variables/algebra like this, or use the array concept to pass multiple operations at once: Expression: [ a = 1.2 * (2 + 4.5), a / 2]   Result: [7.8, 3.9] How it Works You pass a math expression (expr) to MathJS via a custom connector. The connector handles the calculation and returns the result.   Power Automate Action Definition:     Power Automate Result: Key Features of MathJS No API key needed  Supports hundreds of math functions - full list at  functions for MathJS  Free service with: 10-second max evaluation time 10,000 requests/day Works well for loops, expressions, conditionals, and calculated values in flows Requires premium licensing   How to Create the Custom Connector You can import the custom connector using the MathJS.swagger.json file. Here's a video on how to import the file.   Once imported: Add it as a step in your Power Automate flow Use the expr field to write any valid MathJS expression Get your result directly back in the response   As always, if you have any questions or you're looking for Power Platform assistance, just reach out; we're always happy to help. Happy Building!

  • The Hidden Cost of Standing Still

    In today's digital landscape, standing still is not a neutral act. We often see organizations clinging to outdated tools: unsupported Access databases, untouched SharePoint workflows, or custom apps only one person understands. These systems may still “work,” but they’re slow, fragile, and prone to failure, leading to lost time, frustrated users, and growing technical debt. Microsoft’s recent announcement about the retirement of  SharePoint Alerts  is a perfect example of how the tech landscape is evolving. Microsoft is phasing out older functionality in favor of modern, secure, and integrated solutions like Power Automate and SharePoint Rules. Waiting to make these updates doesn’t just risk disruption, it can multiply costs when rushed fixes or full rebuilds become unavoidable. This article breaks down what we see every day: the real-world impact of delays, the hidden costs of standing still, and the business case for proactive modernization. You deserve to understand them. Real-World Impact: The cost of delays What starts as a “quick fix” or a decision to “wait until next quarter” can easily turn into a costly scramble when systems fail or can no longer be supported. Delays can: Undermine user trust in outdated tools that are slow, unreliable, or confusing. Increase support costs as IT teams spend more time maintaining/babysitting legacy systems instead of building new value. Limit access to new features and integrations, making it harder to innovate or respond to business needs. Create compliance and security risks when unsupported platforms fall out of alignment with modern standards. Let’s get real. These aren’t just “what ifs,” they’re the stuff of IT urban legends (except they actually happened)! Southwest Airlines faced over $1 billion in losses after its legacy systems failed to adapt during a holiday disruption. The cost of waiting goes far beyond licensing or development, it affects productivity, customer experience, and even brand reputation.   When to Modernize vs. When to Wait Ok, now that we are all on board, let’s make a plan. Not every system needs to be rebuilt today. Knowing when to modernize is critical. Spotting the right moment to modernize doesn’t require a crystal ball. Look for these telltale signs: You’re spending more time maintaining than improving. If your team is constantly fixing bugs or working around limitations, it’s time to consider a rebuild. Your tools are holding back your business. They are flip phones in a smartphone world. Legacy systems that can’t integrate with modern platforms or scale with your needs are costing you more than you think. You’re dependent on a single person to keep things running. If only one person understands how your system works, you’re one resignation away from a crisis. You’re delaying updates due to fear of disruption. The longer you hit snooze on modernization, the bigger the wake-up call when change finally comes. You’re exposed to security or compliance risks. Unsupported platforms and outdated processes can leave you vulnerable. If none of these apply, it might be okay to wait, but with a plan. Set a timeline, budget for the future, and revisit regularly. If any of these scenarios ring a bell, it’s time to sound the modernization alarm. Think “Avengers, assemble!” but with less spandex and more system upgrades. Setting your team up for success Ready to kick off your modernization adventure? Here are some steps to get you started on the right foot! Watch the full free webinar here . This one-hour session will give you tools to plan and prioritize your modernization efforts! Audit your current systems to identify outdated apps, unsupported databases, or manual processes that are slowing your team down. If this sounds daunting, tools like Microsoft’s CoE toolkit  can help with transparency! Get trained. With low-code technology, subject matter experts within your organization can be the ones helping you lead the modernization charge. Shane’s upcoming   Power Apps & Power Automate 201 course offers expert-led sessions designed to help your team build modern Power Platform solutions with confidence. Identify the cost of modernization. Collaborate with technology experts who have experience developing similar solutions; external guidance can be highly valuable. Your partners can assist you in forecasting timelines and costs, enabling the establishment of realistic expectations. Of course, this is where we tell you to contact us . Don’t wait for a system failure or forced retirement; start planning your modernization strategy today.

  • Triaging Incident Reports with Power Platform and Copilot Studio

    Incident reporting is super important for organizations. But how do we keep a simple paper cut from elevating all the way to the CEO? In a recent video, Shane Young introduces how you can use the analytical power of Copilot to analyze your data, including the initial report, witness statements and even incident images, to properly route your report. Does that sound appealing? In this post, we’ll break it all down, showing you how Power Apps , Power Automate , and Copilot Studio can work together to enhance incident management through effective Copilot Studio incident triage. This integration allows for the transformation of raw field data into actionable insights. Though Shane used Dataverse in this example, because it was easier to include in a solution, you can use this technique with any other data source, such as SharePoint or SQL. Step 1: Report the Incident (Power Apps Canvas App) The first piece of the puzzle is a mobile-friendly Power Apps canvas app. Built with field users in mind, the app helps users submit the important data for the initial report including: Incident location Date and severity Category and description Witness statements Photos of the incident Step 1: Report the incident Step 2: Triggering the Flow (Power Automate) Once an incident is submitted, Power Automate jump starts the process. A cloud flow watches a table (in this case Dataverse) and fires every time a new incident record is added. That flow sends the incident data to an Agent built with Copilot Studio , and it tells the agent to get to work. Step 2: Triggering the Flow Step 3: Let the Agent Think (Copilot Studio) What really takes this process to the next level is incorporating a Copilot agent to do some high-level analysis of the data. The agent accesses all the report data from the initial incident report, witness statements, and incident photos. Then it determines if the incident is truly low , medium , or high  severity. Here’s what it does: Pulls the incident report details Retrieves witness statements Gets the photo and uses AI Builder to describe what’s in it Uses a SharePoint-hosted knowledge document to evaluate the severity Saves the AI-generated photo description to Dataverse Sends a summary email and updates the incident record. Step 3: The Copilot agent takes over   Extracting Insights from Photos One highlight Shane makes in this process is how the agent calls another Power Automate flow to analyze the photo. This uses AI Builder’s Image Classification with Prompt action to describe the image and assess urgency. Shane builds this by adding an Agent flow  (Tool) to his agent. The cool thing about this is that it is just like a Power Automate Flow. Shane reminds us how easy this is, and that if you can do flows in Power Automate, you can build capability like this into your Copilot agent! Agent flow calls AI Builder You can then edit instructions for the Image Classification tool by selecting Edit  button under the Prompt, and then simply add natural language instructions for the AI Builder flow action. Using this technique, you can modify how AI Builder handles your image description. Edit the Instructions to AI Builder action Final Output: A Reasoned Response, Not Just a Reaction Instead of blindly escalating reports based on user judgment, this system adds real intelligence to the process. It: Reduces false alarms Stores meaningful, AI-enhanced data for review Empowers business users to evolve incident evaluation rules The image below is an example email that the flow generates. Notice Shane’s description at the top compared with Copilot’s analysis of the witness statements and photos leading to the Action Taken  conclusion. Final Output Build This Copilot Studio Incident Triage Yourself Check out Shane's videos below: Build the Power App Build the Autonomous Agent Consulting, Training, and More If you want help implementing a solution like this in your own organization, or you want to train your team on Power Apps, Power Automate, AI Builder, or Copilot Studio, then reach out to us here at PowerApps911 . We offer consulting as well as live (including in-person) and on-demand online classes to get you there faster. We can also build your entire solution from the ground up! Questions or Ideas? Got thoughts on how this system could go further? Something you'd want to try with your team? Drop your questions or requests on the YouTube video . We strive to make content that appeals to you, so please let us know!

  • How to Use Deep Linking in Power Apps Canvas Apps

    If you’ve ever wanted to launch your app and take your users exactly where they need to go, then you need deep linking in Power Apps Canvas Apps. Deep linking allows you to pass data and navigate directly to specific items or screens in your app using URL parameters. Sounds hard but, it is not. This post will walk you through: What deep linking is and why it matters How to use the Param function in Power FX How to work with multiple parameters Real-world examples of deep linking By the end, you’ll understand how to implement deep linking in Power Apps. Next week, we’ll build on this with a fully functional vacation request app that puts these mechanics to work. Note: While it isn't hard, there are a lot of moving parts. If you are struggling to implement, check out this video for a full walkthrough of Power Apps Deep Linking: Updated: Power Apps Deep Linking What is Deep Linking in Power Apps? Deep linking in Power Apps is the ability to launch an app with URL parameters that can be read by the app to perform actions like navigating to a specific screen, displaying a custom message, or even opening the exact record the user needs to review. Typically, these records are created in your app and then sent to the user via Outlook emails or Teams messages. Why it matters: Better user experience  – take users where they need to go immediately. Simplified navigation  – eliminate extra clicks. Integration with Microsoft tools  – use deep links in email, SharePoint, or Teams. The OnSelect property of a Power Apps button that dynamically generates a deep link for the selected Item in the Gallery. The link has 2 parameters. Cow is set to 1 and EID is set to the ID of the Item. Step 1: Using Param in Power Apps with Power FX The Param function is your starting point for deep linking. It’s a Power FX function that reads data from the URL. Here’s a basic example: Label.Text = Param("Msg") Now, if you open your app with this URL: https://apps.powerapps.com/play/e/default-9416a1d9-2b7f-4847-8223-18c2057145e3/a/a8faf8f2-96b7-45da-9c54-d17f877847f9?tenantId=9416a1d9-2b7f-4847-8223-18c2057145e3&hint=705bc13c-a6b0-438e-97ce-ee04e1d6c65f&sourcetime=1754079731074&Msg=Hello%20World. Your label will display “Hello World.” Note: This is a URL of my app, it will not open for you. You would replace everything before &Msg with the URL of your app. Step 2: Navigating with Param You can also use Param to decide which screen a user should see first. You would place the following code in the App > StartScreen property: If(Param("Screen") = "Approvals", 'Approval Screen', Welcome ) With this setup, if you open your app using: https://apps.powerapps.com/play/e/default-9416a1d9-2b7f-4847-8223-18c2057145e3/a/a8faf8f2-96b7-45da-9c54-d17f877847f9?tenantId=9416a1d9-2b7f-4847-8223-18c2057145e3&hint=705bc13c-a6b0-438e-97ce-ee04e1d6c65f&sourcetime=1754079731074&Screen=Approvals The app will take the user directly to the Approvals screen. Step 3: Using Multiple Params in Power Apps Deep linking gets even better when you combine multiple parameters. So we could combine the two previous examples and have them both in the same URL. https://apps.powerapps.com/play/e/default-9416a1d9-2b7f-4847-8223-18c2057145e3/a/a8faf8f2-96b7-45da-9c54-d17f877847f9?tenantId=9416a1d9-2b7f-4847-8223-18c2057145e3&hint=705bc13c-a6b0-438e-97ce-ee04e1d6c65f&sourcetime=1754079731074&Screen=Approvals&Msg=Hello%20World. This deep link will: Navigate the user directly to the Approvals screen Display “Hello World.” in a label Keep in mind, you can have as many Parameters in your URL as you need, though I have never needed more than two. Typically, one to control the screen and a second to control which record is displayed on that screen. Pro Tips for Power Apps Deep Linking Use clear parameter names  – keep them short and descriptive (e.g., Screen, Msg, RecordID). Combine deep linking with variables  – use Power FX to store Param values and reuse them across screens. Store them in Formulas if they aren't going to change, Global Variables if you need to manipulate the variable throughout the app. Test your links in multiple browsers to make sure URL encoding works correctly. Include deep links in Power Automate notifications , Outlook emails ,  or Teams messages for a seamless experience. Real-World Use Cases Approvals:  Send managers a link that opens directly to their pending approvals. Data-driven navigation:  Link to a specific record for quick access. Notifications:  Add deep links to email or Teams messages to reduce user clicks. What’s Next This post focused on the mechanics of deep linking in Power Apps Canvas Apps. Next week, we’ll take it a step further with a fully functional vacation request app that puts deep linking to work. In the meantime, check out the full deep linking video here: https://www.youtube.com/watch?v=inHj96OGc5I Need Help? If you’re ready to add deep linking or any other Power Apps feature to your app but don’t have the time or want expert guidance, the team here at PowerApps911 is happy to help. Fill out the contact form , and we’ll get to work making your app awesome.

  • Our take on the January 2025 Power Apps Feature Update

    We’re following along with Microsoft as they’re releasing new features for Public Preview including the new Power Platform admin center, the new Power Apps Plan designer, the new Data Workspace functionality, and new SQL to Dataverse features. The Power Platform admin center  has been upgraded, and you can select the toggle at the top right of the home screen to see what it looks like. You’ll note the new by-task organization of it in clickable links on the left-side navigation rail. For example, if you want to manage your Environments, you select the Manage button. Also new in this interface are the new Monitor (which is still being rolled out) and Deployment hubs. Lastly, the home screen of the admin center allows you to customize your view by adding/removing cards as well as drag-and-drop functionality with the cards to arrange them just so.  The Power Apps plan designer  is a new way to enlist Copilot to help you in crafting solutions to your business problems. You can get to it by toggling on the new Power Apps experience from the top right of the home page. Now you can add natural language prompts to let Copilot know the specifics of your business problem. Copilot will provide an outline of your business problem, giving you some proposed apps, data tables, and flows as a solution. Copilot allows you to continue to add prompts through the design process to help you refine what’s going on. Shane has recently provided a video of how this works if you want to see it in practice. You will need to have a Dataverse equipped environment to experience this functionality, but it is a superb way to streamline the business problem process, getting from problem to solution in a very short time.  Power Apps plan designer showing the Doggie Daycare Manager The Data Workspace  is the new visual editor to see your tables created on a canvas and to view them together along with their relationships. It’s a great way to create, add, and modify new tables manually or with Copilot’s help. You get there from the Create new tables  choice from the Tables  tab. You can toggle which columns you want to show, add new columns, and create/manage table relationships. Microsoft is working to add this same functionality with existing tables, but for now, you can add existing tables to the Data Workspace in “read-only” mode. If you want to edit existing tables, you’ll still have to open that table in a separate tab. Overall, this is a really nice interface for interacting with your tables and their relationships. Data Workspace showing the tables from the Doggie Daycare Manager solution Microsoft gave SQL developers some love in January. They’ve included the ability to define SQL Server environment variables in your solution. As you create the environment variable, you can now select “SQL” as the connector and then enter the connection details in the “New environment details” parameter. New Environment dialogue showing SQL Server option under the Connector Also, connections to virtual tables now include PostgreSQL . It’s easier than ever to connect to your SQL data with Dataverse. Virtual table creation showing PostgreSQL option. We’ll certainly be trying out these new features this month!

  • Why Design Matters (Yes, even in Power Apps)

    Let’s be honest: most internal apps don’t exactly scream “award-winning user experience.” And maybe that’s fine - until it isn’t. When users don’t engage with your app or when support requests start piling up, it’s easy to point fingers at functionality. But more often than not, the real culprit is design - or the lack thereof.  The apps you build today will live longer, cost less, and work better if you get design right from the start. Design Drives Adoption We have all been in the place where we quit something and walk away because it feels overwhelming, and your users are no different. You can build the most functional Power App in the world, but if it feels clunky, cluttered, or confusing, users will avoid it. Design is not decoration, it’s communication. Your design should communicate to users where to look and what to do. Good User Experience (UX) Extends the Life of Your App Apps with poor UX age faster. They break under the weight of user frustration. They get rewritten, reworked, or worse - abandoned. On the flip side, a well-designed app becomes a reliable part of a team's workflow. People learn it faster, require less training, and adapt to changes more easily because the foundation is intuitive. People tend to invest in the success of things that are more attractive to them. They excuse small errors and are more likely to contribute to its success by providing feedback. The better the UX, the longer your app stays useful and relevant. Quality Design = Lower Long-Term Cost Quality user experience often gets missed in project budgets: Good UX might cost more upfront, but bad UX costs you every day after launch. Poor design slows adoption, increases support needs, and leads to avoidable rework. Designing for the user early reduces long-term friction, minimizes maintenance, and saves serious money – whether measured in hours, help desk tickets, or actual rebuilds. Good design isn’t an expense. It’s an investment. Show, Don’t Tell Telling you is one thing, but a picture is worth a thousand words. Take the example below: Don’t worry, we’re not using a real app for the “bad” example here. But I’d be lying if I said I haven’t seen designs this rough out in the wild. The consultant who helped me mock it up practically needed eye bleach, and rightly so. It’s cluttered, overwhelming, and hard to use. Both screens are meant to show color options for a templating app, designed to help users build Power Apps that follow a consistent brand style. And yet, one of them is clearly worse. Why? The colors are similar, and the core functionality is the same. Now take a look at the cleaner version. Instructions are still available, but they’re tucked behind clearly labeled buttons instead of being splashed across the screen. You’re not losing information. You’re gaining clarity. The original version is packed with controls meant to showcase how your color choices might look in action. But the updated screen achieves the same goal with a single large image that demonstrates gradients and contrast more effectively. Ask yourself: Which one would you rather use? Which one feels more approachable? Which one would your users be more likely to adopt and give feedback on? Here’s the real kicker. The well-designed app screen was built over two years ago, and it’s still in use today with very few changes. That’s the power of good design.   How to Level Up Your Design Game First of all, you don’t have to hire a graphic designer or become a creative professional to implement principles of good UX. The internet is packed  with resources teaching the basics of interface design, and if you want to improve the design of your Power Apps – or anything else you’re building – you can start here: Learn the principles.  Start with the basics of visual hierarchy, spacing, alignment, and contrast (they’re simple, but powerful). Check out https://lawsofux.com/  for a great series of resources that covers the basics (with advanced topics as well). Watch how people use your app.  User behavior is a better guide than your opinion. Create interfaces, then physically watch users interact with your app, either in person or via screenshare. You’ll learn a ton by watching mouse movement – are your controls placed intuitively, or is there a lot of searching around to find where to click? If your test users have to ask questions, consider that an opportunity to improve your design. Remember, every question you get from your test users is a possible support call down the road. Design in such a way that instructions are unnecessary. You don’t have to reinvent the wheel.  Study interfaces you enjoy using. Figure out why  they work. Study designs on sites like https://dribbble.com/  and try to replicate them in the Power Apps Studio. Check out the training projects on https://www.frontendmentor.io/ and complete the challenges in Power Apps. Don’t trust defaults.  The current generation of Modern Controls lacks a lot of customization options. And the default settings for classic Power Apps controls are, quite frankly, ugly. But classic controls still give you the most flexibility, and you can  make them look good.  Just get to know all your properties. Get professionally trained!   PowerApps911 offers hands-on training to help you raise your game. Check out our live Extreme Makeover, Power Apps Edition  training, offered throughout the year. Of course, the other option – if you’d rather skip the learning curve – hire us.  We offer: UI/UX design services  for Power Apps. Maybe you’ve got a brilliant app that is functional but lacks in the design department. We can handle the design load and help bring creativity to your great functionality. Ground-up app design .   We can handle it all, from start to finish, and you can get a strategically and creatively designed app that hits the ground running from day one. Workshops and trainings  to help your team get hands-on design skills that actually apply to what you’re building   Final Thought Design is often treated like frosting on a cake. In reality, it’s the flour. You can’t bake a good cake without it. If you care about usability, longevity, and return on investment, design can’t be an afterthought - it has to be built in from the beginning. And if you’re ready to do that, we’re here to help! 👉 Power Apps Makeover  – our hands-on course to level up your app design game! Our need help with something else? Just Contact Us !

  • How Nicola's Leading Our AI Journey (Excitement, Fear, and Everything In Between)

    Shane was looking for help brainstorming content the other day and said to me, “You seem to be good with the negative of Copilot.” And I thought, woah woah woah—I happen to be very excited about the possibilities of AI and Copilot! But then, if I’m being honest, he might have a point. Thinking that maybe some of our customers share a similar hesitation, I thought I would write about it. Am I a huge fan and excited for personal productivity? Absolutely yes! And I genuinely hope everyone is using AI for personal tasks. But do I start to feel nervous when I think about AI automated solutions for our internal processes and customer experience? Also yes. As business leaders, we constantly strive to make the right decisions. We’re focused on growing the business, providing opportunities for our employees, and one wrong decision could put that at risk. When I think about the possibilities AI offers for furthering our business, the ideas flow easily. But when it's time to actually execute, these are the things that slow me down: Consistency and Control  – If we build something that answers HR questions or addresses client inquiries, I need confidence that it gives the same answer each time to the same question. Trust can quickly erode if this consistency isn’t guaranteed. To tackle this, we're starting with processes already heavily documented internally—like our training materials and knowledge base. This helps train the tool accurately and minimize risk. Brand – At PowerApps911, we work hard to execute according to our values, and any tool we use has to embody that brand. We’re planning careful internal tests first, ensuring the solutions we implement reflect our values, and don’t inadvertently compromise what makes us unique. Fear in the Organization  – That’s right—even at PowerApps911, where Shane passionately talks about AI at least once a week, people still worry. We hear concerns like, “It only takes me a few seconds to do that; why automate?” or, “There are so many variables to consider in the setup—can we really trust AI with all those decisions?” or even, “Am I helping build my job replacement?” I genuinely understand the anxiety around job security. Just this week, I reiterated that our goal isn’t replacing jobs—it’s about removing repetitive tasks, allowing everyone to focus on more meaningful and rewarding work. Yet, despite these fears, the AI train has left the station, and I’m not going to allow our company to be left behind. We’re learning about the technology every day to better serve our customers (I think Shane spent at least 100 hours on Microsoft Copilot Studio in March!). But beyond learning, as CEO, it’s my responsibility to ensure we actively advance our service delivery and customer experience with AI. Here’s how we’re approaching AI in our organization: Encourage People to Use It  – This is the most obvious step, but also critical. Bi-Weekly Tech Deep Dives  – We already hold regular sessions, and now we’re adding sessions specifically focused on AI. This way, our internal AI enthusiasts can keep everyone else informed. Automate Tasks People Dislike  – We’re looking at processes within our organization that people dread. Let’s boost morale by automating those unloved tasks. People are usually more supportive if AI removes something they didn't enjoy doing in the first place 😊. Improve Weak Processes  – Next, we’re targeting processes we don’t currently execute well. It’s hard to resist improvements if the AI-driven solution clearly makes things better. Internal Testing Before Customer Rollout  – For customer-facing solutions, we build and test internally first. Our consultants thoroughly vet solutions to ensure the responses align with our standards. For one solution, we are adding a review step, requiring consultant approval before any response goes out. Human oversight remains crucial to ensuring quality and reducing fear. Transparency with Customers  – Our customers have questions and concerns too. They want efficiency but also reassurance about quality and control. We'll be transparent about what’s automated and where human oversight is essential. Change as significant as AI is tough, but as I said—the AI train has left the station, and there’s no turning back. If we don’t leverage AI to improve our business operations, a competitor will. They'll deliver similar products better, cheaper, and faster. If you're hesitating about AI, start small. Choose just one repetitive, unloved task in your business and test the waters. Your future self (and your employees!) will thank you. Curious about how AI could fit into your business, but not sure where to start? Let’s figure it out together. Our team can help you explore where AI makes the most sense—whether it’s improving internal processes, enhancing customer experiences, or tackling that one workflow nobody loves. If you're ready to take the first step (or even just have the conversation), let’s talk about a project . We’ll meet you where you are.

  • Example App: Better Incident Reporting with Power Apps

    How about we all stop tracking Incidents in these ridiculous oversized Excel spreadsheets? They are clunky, hard to use, and share too much info with everyone. I can’t tell you how many customers have shown me their current solution and there is a whole lot of PII for anyone to steal. 😢 Today let me show an example of an Incident Reporting app based off of some customer apps and discussions we have had. Nothing too elaborate but hopefully gets your mind going on what is possible when you build your own custom solution using Power Apps. With solutions like this we focus on a few things: • Ease of use, anyone should be able to pick up the app and use it, no training required • Well structured and secured data, what could does it do to collect the data if you can’t keep it safe and generate reports on it later • The ability to capture photos and witness in a structured, related manner • Follow our business needs, too often when using off the shelf solutions the process follows the software, here we make the software follow the business process Okay. That is enough of the setup, let’s see it. And speaking of seeing it, if you want to see the app in action then check out the video Power Apps Advanced Example: Modern Incident Reporting . The video shows the working demo and some of the code behind the scenes. Incident Reporting Apps Walkthrough Below is a break down of all of the screens and some key details. Remember with Power Apps you can make the app anything you want, so this is meant to inspire you, not dictate to you how it all works. Mobile App Welcome Screen Often Incidents happen away from your desk (unless you are clumsy like me🤕) so we often build these apps as Mobile apps. That way they can be opened on any modern phone or tablet and get to work. The Warehouse, the breakroom, the job site, or even your desk, the app is always ready to go. Creating a New Incident By making it quick and simple to log incidents—even in high-stress situations—this app helps ensure more complete data capture, which leads to better reporting and faster resolution of safety hazards. After clicking New the user is taken to one screen that will prompt them for the information they need to capture. All fields are optional in this example. The goal often with these apps is to encourage them to get as much information as quickly as possible. When reporting on a spill it isn’t critical but this same app will be used to report a traffic accident or other possible stressful events. Getting as many details as possible is the key. Some customers choose also to have different logic when they choose high severity. So while only the safety coordinator is notified when there are trip hazards, the entire executive tier is notified when there is an injury requiring medical attention or worse. The great part about Power Apps is you can easily add that custom logic based on your business. One other nice thing about this screen. When you go to enter Location that is usually simple so you just have a small line, but when you enter Description you actually click the + and you are taken to a full screen for getting the description entered. This encourages maximum detail. Adding Witnesses with Proper Relationships With Power Apps connected to Dataverse, sensitive data like personal information can be secured with role-based permissions. This means only authorized personnel can access PII—unlike Excel files that often get emailed around without restrictions. Sometimes there are zero witnesses of the mystery spill in the breakroom; sometimes there are 25 of Timmy falling off the table with a lampshade on his head at the company holiday party. 🤣 Either way, the app needs to be flexible unlike that Excel solution that just has a bunch of columns. Here they can add as many witnesses as available. Each one will be stored as its own record in a separate table and then related back to the incident. Your typical parent child data model. Faster and more flexible for reporting. Awesome. Oh yeah, and unlike that Excel solution we can actually secure the child data, like PII. Do you know how often we see that type of data leaked in the XLSX file? 😲 Remember, if you need help with building this Incident Reporting Apps, or any other ideas you have we are happy to help. Contact A picture is worth 1000 words Like witnesses sometimes you need 1 picture and sometimes you need a dozen. So once again there is a flexible, many to one relationship for photos. Also, while this screen just grabs the image, keep in mind that adding metadata or notes about the image would be very straightforward. Sometimes 1000 words doesn’t cut it so letting the user add notes can be helpful. You could even add the ability to add annotations but now I am just showing off. Submitting the Incident Report Now that they have captured all of the information it is time to Submit it. This will save all of the data and establish all of the relationships so you can easily report on it later. But it doesn’t have to end there. On Submit you could add logic to do a multitude of things: • Send an email to the safety team with a link directly to this incident (deep linking) • Generate a PDF of the incident for saving or submitting to insurance • Have notifications or alerts go based on the priority or severity of the event • Start an approval or assignment process to get incident taken care of Once again, the great part about Power Apps is that you can make the software do what the business process dictates, not the other way around. View Existing By breaking things up into two apps you build a best of class solution for each app, instead of a big crazy app for everyone. This approach not only keeps the reporting app simple and user-friendly but also ensures that the management app can offer more advanced functionality tailored to supervisors and administrators. In the demo app there is a simple screen for finding and viewing existing Incident Reports. Often with this screen you would limit the incidents to the ones submitted by the logged in user or for their area of responsibility. You will notice that this app does not have edit capabilities. That was a design decision for the demo. Typically you will have 2 apps. One app for easily submitting the Incident Report and then another for responding to and managing the incident. The management app is often a desktop app because you do that work at your desk, not in the field. By breaking things up into two apps you build a best of class solution for each app, instead of a big crazy app for everyone. Remember when we started, one of our goals was to make our reporting app as easy to use as possible without training. Adding a bunch of editing and other functionality they don’t need just clutters things up. Closing thoughts Incident reporting apps are very common in the businesses we talk to. By building a straight forward Power Apps app to manage the process they get better data and better outcomes based on their business needs, not what the 3rd party app can do. If you need help with this or any Power Apps project let us know. Click that Contact button and we will be happy to give you a hands-on demo of this app or discuss any of the thousands of business solutions we have built for customers that range from a one woman shop in Alabama to multiple companies across the globe who are on the top of the Fortune list.

  • Introducing the SharePoint Copilot Agent: Your Site’s New Best Friend

    Have you ever felt like navigating SharePoint is a bit like wandering through a massive library without a librarian? You're pretty sure the information you need is somewhere on the shelves, but finding it feels like a treasure hunt without a map. Well, guess what? Microsoft just handed us the map—and it's called the SharePoint Copilot Agent ! A few important notes and limitations you should be aware of before getting started. To use the SharePoint Copilot Agent features you will need a Microsoft 365 Copilot license. Currently, SharePoint Copilot Agents only work with files up to 3 mb. SharePoint lists are not currently supported with Agents. How to use the existing SharePoint Copilot Agent. From your SharePoint site, in the upper right corner, you will see a Copilot icon. Click on the Copilot  icon, and you will see a flyout with a Chatbot specific to your SharePoint site, with a few default choices. The chat bot can search through all of your Documents and pages in your SharePoint site. Below is an image to the supported document types. Now, from the open chatbot window we can ask a question like, Are we off for Christmas You will see we are then presented with a response as well as a reference as to where it got this information. Which was an internal document on this SharePoint site. Now, what happens if you have documents with conflicting information? Well let’s see. So, we are now going to ask a question like, Can I bring my dog to office?   In this case, we know we have 2 documents on our site for pet policy. One is in our Customer Docs folder and the other is in our Documents (Company Documents) Library. Since we want to know what our company’s policy on pets, we are going to navigate to the Documents  Library. From the Document library we can now click on the Copilot Agent Site , and from the dropdown select our Documents agent 1  which we created specifically for this library. Now if we ask if the same question again, Can I bring my dog to office?  We will get a completely different response because we are only looking for this information in this specific document library. Now It's time to create your first SharePoint Copilot Agent! In our example, we will be navigating to our Customer Docs  Library. At the top, click on Create an agent . You will get a new agent pop up, that is ready to go right away. But we want to make a few changes and refine the scope a little. Click Edit . In the Edit agent pop up, feel free to change the Name, Image, and Description. Then, click on Sources . With Sources, you have the ability to add additional sites if you want. Or you could select specific files you want to include so the chatbot knows to search those as well. In this case we only want it to search this specific Document Library, so we won’t be making any changes here. Now click on Behavior . From Behavior, you can set a custom Welcome message. Letting users know what is going on. You can set your own Starter Prompts. These are basically suggestions for what the ChatBot can do. These will help your users get started using the chatbot. You can also set instructions for the agent. This will tell the agent how to interact when using the chatbot. We like to keep things fun around here so we changed our instructions a little, see screen shot below. (You don’t have to do that, you could also leave the default instructions if you wanted.) Then just click Save  and then close the Agent window. Great job! You just created your first SharePoint Copilot Agent! You will notice the Agent is now selected and we can start prompting to test it out. So, let’s ask it the same question we asked earlier to kick things off, Can I bring my pet to work?  (You will see the response in the screenshot, and it is only looking in this document library for the answer.) You will also notice we can view the Reference document where it got this information from, it’s never a bad idea to verify. Now if we ask, Could I ask my manager for more information?  Something important to note here is that your Copilot Agent has access to the Microsoft Graph. So, it pulled in Shane’s managers name, Nicola, which is really nice. Another cool feature of the SharePoint Copilot Agent is the ability to select a specific file and ask questions just for the selected file. So, in our example we will select a file and then ask the chatbot, Summarize this file please . And just like that, it summarized our document! Ok, switching gears for just a second. We are going to head back over to our Documents  library to show off another cool feature of SharePoint Copilot Agents. Let’s say you have 2 similar excel files in your document library and need to compare them. With your SharePoint copilot agent, this is no problem! In this example, we have 2 Payroll files and want to compare them so it will find the differences, we can simply ask, Compare these files please . We will then see, it gives us the key difference between the 2 files, saving us time from having to do it manually. We also previously mentioned you could create SharePoint Copilot agents for Sites and Libraries. But you can also quickly and easily create an agent for a specific folder or file as well. If you select a file in your document library and click the ellipses , from the flyout you will see Create an agent . This agent will be specific to the file selected. Switching back to our Customer Docs  Library, notice you will now see a Customer Docs Chatbot.agent  file. If you click on that file, it will open the Chatbot in a full window for you. So how do users access these SharePoint Copilot Agents? Are they just instantly available for users after it’s created? Great questions! In the upper right, click on the dropdown  next to the agent. 27.  You will see 2 different sections, you have Approved for this site  and Recommended for you . The Approved Agents have been shared and are accessible to all of your users with Copilot license. Whereas the Recommended one, is only available to Shane since it has not been shared yet. To make our Customer Docs Chatbot available to everyone, we can click on the ellipses next to the chatbot. From the dropdown, select Set as Approved  and then it would be globally accessible. You may notice there is also a Share  button. By using the Share button, you could select specific users or groups who you would like to share this Agent with. There is a third option for sharing your Chatbot, and that is you can share it to Teams and use it in Teams. (We did not have this option show up for us for whatever reason, but just know it is possible and should be available) – NOT SURE WE WANT TO INCLUDE THIS. As a final note on sharing and security, if a file(s) are not shared with users for security reasons, the chatbot will not use those documents in it’s response. This is important to know. Hopefully this was helpful in getting you started with SharePoint Copilot Agents. And helps get you thinking about how you could use SharePoint agents to help you and your team work more efficiently. Shane also has a video that goes along with these steps, you can watch here .   Wrapping It Up: Time to Level Up Your SharePoint Game The SharePoint Copilot Agent is more than just a chatbot; it's like having a personal assistant who's always on call, ready to help you navigate the maze of information with ease. What would you ask your Copilot Agent first?  Drop your ideas in the comments below—we'd love to hear how you plan to make the most of this game-changing tool!

  • 6 Apps & Flows That Run Our Business

    At PowerApps911, we rely on efficient and cost-effective business tools, just like you. Instead of settling for generic, subscription-based apps that only partially meet our needs, we’ve embraced the Power Platform to create tailored solutions that address our specific challenges. Why Build Custom Solutions Instead of Buying SaaS? Traditional software often requires businesses to adapt their processes to fit the tool—a frustrating and inefficient experience. But with the Power Platform, we’ve flipped this dynamic. Now, we can design solutions that align perfectly with our workflows, empowering us to operate more effectively. The Advantages of Custom Solutions: Tailored Fit:  Each app is built to match our exact processes, ensuring seamless integration with our operations. Rapid Development:  Thanks to low-code tools, we can build functional apps in days rather than months. Empowerment:  Business experts can create these solutions directly, reducing reliance on traditional developers. Below, I share six examples of how we’ve solved real business problems using Power Apps and Power Automate. These solutions are tailored for our needs but can serve as inspiration for how specific and effective your own tools can become. Are these solutions a perfect fit for your business? Not exactly—they’re tailor-made for ours. However, they showcase the adaptability and customization potential of the Power Platform, inspiring you to imagine just how precisely you can address your own unique challenges. Also, keep in mind even though we have built 1,000s of apps and flows for customers we rarely build our own tools with that much focus. Many of them are on iteration 50 or more as we are constantly improving and tweaking it. Another beauty of the platform, the tools and the apps are at their best when things are very agile. Oh yeah, and if you want to see any of these business solutions in action then check out the video 6 Apps & flows that run our business - Power Automate & Power Apps Examples Applicant Tracking System Managing hundreds of job applications annually can be overwhelming, especially for a team of 30. To address this, we use a custom Applicant Tracking System (ATS) built with Microsoft Forms, Power Automate, and SharePoint. Process Overview:  Applicants submit their information via a Microsoft Form embedded on our careers page. Power Automate processes the form responses, applies filters for priority applications, and stores the data in a SharePoint list. Key Feature:  Automated Teams notifications allow reviewers to evaluate key responses quickly and collaboratively make hiring decisions. Enhancements:  Custom Power Apps forms on SharePoint streamline the data review and rejection process. Weekly Meeting Scheduler For our Power Platform University program, we host weekly classes for rotating groups of students. Managing these meetings was once a time-consuming task until we automated the process. Solution Details:  I fill out the app with the subject and body and hit Send. It triggers a flow that gets the current list of students from the Training API. It then generates a Teams meeting and sends each student a proper Teams invite. Time Saved:  Previously, it took 30 minutes to prepare these invites manually. Now, it’s done in under a minute. Bonus Feature:  Custom logic ensures recurring schedules (e.g., Thursdays at 3 PM) are automatically accounted for. Help Request Manager Customer inquiries are central to our business, and we handle thousands of them annually. Our Help Request Manager flow ensures no request goes unnoticed. If you have ever filled out our Contact Us form, you have been in this process. Core Functionality:  A Cognito Form collects customer requests, which Power Automate then routes to the designated team member for the day. The flow then facilitates all of the back and forth via Teams with the consultant and emails to the requestor. It might be the most complicated flow I know of. Adaptive Cards in Teams:  Responses are managed directly within Teams, eliminating email clutter for the PowerApps911 team. Additional Benefits:  The flow automatically updates SharePoint with inquiry statuses and tracks correspondence. Also, if the requestor says yes, they can automatically add themselves to our mailing list. I decided a picture of the whole flow was most interesting. 🤣 To say it does a lot is an understatement. Office Hours Scheduling One of the best features of being a paid Training student is the monthly live office hour sessions where you can get your own questions answered. The problem was not enough people were attending. So, we gave them an option to get a real meeting invite, none of that ICS garbage. How It Works:  Students select their preferred session (AM/PM), triggering a flow that adds them to a hidden list of attendees in a Teams meeting. Key Advantage:  Students receive calendar invites directly, enhancing attendance and reducing friction. I almost forgot, this solution has a full build video here . Do you want to get your questions answered? Sign up for one of our paid training options with Office Hours and you can attend and get your answers! Custom CRM System Our custom-built CRM, powered by Dataverse and integrated with QuickBooks, is at the heart of our operations. It’s a sophisticated model-driven app that simplifies customer and project management. Highlights: Tracks client details, projects, time sheets, and billing information. Seamless integration with QuickBooks through a Dataverse plugin. Biggest Win:  Automating time entry approvals and syncing data with QuickBooks saves over 10 hours of manual work weekly. Troubleshooting with Blank Apps Troubleshooting large apps or flows can be challenging, so we rely on creating “blank apps” to replicate issues in an isolated environment. Fail Fast Philosophy:  By recreating the problem in a controlled app, we can quickly identify whether the issue lies in our code or the platform itself. Key Takeaway:  This approach reduces debugging time and prevents unintended disruptions in live apps. Final Thoughts Building apps and flows isn’t just about solving problems; it’s about empowering teams and enhancing user experiences. Each of these solutions has not only made our operations smoother but also inspired us to push the boundaries of what’s possible with the Power Platform. If you need help with solving some of your business problems with your own custom solutions, then hit that contact button and let us know. We can help you with anything from a 30-minute bug fix to a 30-year partnership. Training, mentoring, architectural double checking, and more. We are experts and happy to share that expertise with you.

  • 2024 Power Platform Functionality Highlights

    As we wrap up the year, we know everyone is already in holiday mode, so instead of diving into complex new stuff, we’re taking a moment to reflect on the exciting functionality updates across the Power Platform in 2024. This year has been filled with innovation that continues to empower makers and users alike. Let’s dive into the highlights, broken down by product, to give you a quick recap before the new year. Power Apps The Power Apps Studio saw updates this year with the addition of Copilot , new Modern controls , and an updated interface for makers : Copilot:  Made the formula bar more intuitive, automatically suggesting formula inputs as you type. You can even add remarks to your formula code, and Copilot will interpret these as coding suggestions. Modern Controls:  Many modern controls are now production-ready, offering robust theming and customization options. These sleek controls, like combo boxes, date pickers, and the new data table (still in preview), make creating polished apps easier than ever. Enhanced Interface:  The updated interface introduced hover menus for controls like galleries and combo boxes, providing quick access to settings without extra clicks. Tree view icons now better represent control types, while the Data and Media panels simplify resource management with smart removal buttons for unused assets. Power Automate Power Automate delivered notable updates in 2024, focusing on usability and integration: Modern Designer:  Bugs have been ironed out, and Copilot now provides intuitive suggestions while designing and testing flows. Power Automate Desktop:  Seamless integration between desktop and cloud flows is now possible, with Power FX support for desktop flows and improved functionality for the recorder tool. Tweaking automations has never been easier. Copilot for Automations:  Copilot has improved significantly, turning natural language into functional automations. If you haven’t used it yet, now is the time to explore this game-changing feature. Power Pages 2024 Power Pages updates focus on enhancing the way makers create and connect their web experiences: Copilot for Pages and Forms:  Easily create pages and forms using Copilot, which leverages natural language and the summarization API for actionable insights. Add insights to your lists and forms with Copilot integration with the summarization API. Improved Data Connectivity:  A new setup wizard simplifies the creation of virtual tables in Dataverse and linking to external data sources, making integrations more accessible than ever. Power Fx Integration:  While still in preview, Power Fx began rolling out in Power Pages, giving makers more flexibility to customize logic directly within their sites. Enhanced Data Model:  All new sites now include an enhanced data model by default, setting a strong foundation for scalable and efficient data management. Power BI Power BI delivered some powerful updates in 2024, focused on enhancing collaboration, visual storytelling, and data-driven decision-making: Copilot Integration:  Introduced natural language queries, AI-generated report summaries, and automated data cleaning to streamline workflows and enhance usability. DAX Enhancements:  Released the general availability of DAX Query View, support for live connections, and new INFO functions for improved metadata insights. Feature Updates:  Added visual calculations, dynamic format strings for measures, and enhancements to card and slicer visuals, offering greater flexibility and interactivity in reporting. Improved User Experience:  Features like Dark Mode, advanced geospatial mapping with the Path Layer, and small multiples in card visuals further enhanced Power BI's analytical capabilities and ease of use.   Shane releases new videos on his YouTube Channel , and those videos, plus exclusive extras (app downloads, code snippets), are available ad-free on our training site for just $15 per month (you can include office hours for $20 per month)!

bottom of page