Brian Dang, Author at Microsoft Power Platform Blog http://approjects.co.za/?big=en-us/power-platform/blog Innovate with Business Apps Wed, 11 Jun 2025 15:08:50 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.3 Flow templates for educators http://approjects.co.za/?big=en-us/power-platform/blog/power-automate/flow-templates-for-educators/ Mon, 08 Mar 2021 16:00:00 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-automate/flow-templates-for-educators/ The EDU teams within Microsoft have surveyed hundreds of teachers around the world and created automated workflows on common tasks in education including creating tasks for onboarding new teachers, automating registration, tracking professional development credits, and more. Try these templates and take them apart to get started with Power Automate.

The post Flow templates for educators appeared first on Microsoft Power Platform Blog.

]]>
If there is one resource that continually evades the grasp of nearly every educator on earth, it is time. With such a broad set of responsibilities, it seems there simply are not enough hours in the day for a teacher to accomplish everything. Preparing materials, organizing classes, teaching classes, engaging in professional learning, working with parents and families, and playing key roles as co-workers, school leaders, and community members only scratch the surface of what it means to be an educator. When you toss COVID-19 into the mix, it’s no wonder that teachers have even less time as they work to fulfill their important roles during a tumultuous time.

Remote and hybrid learning environments are now the predominant means for instruction. Platforms like Microsoft Teams have become the avenue through which teachers teach and students learn. It is our mission to empower every educator to achieve more and we want to help you take meaningful steps toward that end by saving you precious time.

Power Automate can be a useful tool that takes everyday tasks and automates them through various “flows.” Like a “flow chart” from which it gets its name, a “flow” is a series of steps that run in order. It can look up rows from a table, send emails, create files, and even play back a set of recorded clicks and keystrokes for desktop automation. Gone are the days of repeating by hand, one by one.

 

As you will read in the list below, anything from course registration to scheduling announcements can be set to automatically run with very little setup beforehand. The EDU teams within Microsoft have surveyed hundreds of teachers around the world and created automated workflows on common educator tasks including:

Title Description
Create tasks in Microsoft Planner for onboarding new teacher Automatically create all the tasks and checklist items a new teacher needs to complete in Microsoft Planner.

 

Send text to office liaison to translate Communication from a teacher, administrator, or anyone at the office may need to be translated for families to read in their language. This flow will help an office liaison set up a way to receive content to be translated, automate a basic translation to work from, and return a refined translation to the sender.

 

Automating registration for courses or school events This flow will allow you to automatically set up course or event registrations and send confirmation emails to the organizer and attendee.

 

Collect instructional feedback or other information for staff and students  This flow will allow educators create an automatic system for gathering and collecting information using Microsoft Forms and SharePoint.

 

Sending posts between Teams channels This flow will allow for educators to send messages from one Teams channel to a different Team without having to copy and paste. This is different from posting one message across multiple channels within the same Team

 

Scheduling posts and announcements in Teams This flow will allow educators to schedule announcements and posts to be published at a designated time in Microsoft Teams such as a schedule for the week.

 

Creating an assessment calendar This flow will allow for educators to create a calendar of assessments across the institution. Any teacher can submit an assessment date in a form which will add it to a calendar.

 

Submitting professional development (PD) requests This flow tracks an approval process for professional development credits. Educators submit a form for PD requests, then an approval is automatically sent for consideration.
Track approvals or requests for maintenance This flow will allow leaders or educators create an automatic maintenance system that involves approvals or requests using Microsoft Forms, Outlook, and SharePoint.

We are here to help you implement the flows you see in this list along with any others you may be able to think up. We are eager to understand how automation can become a meaningful and helpful part of your daily workflow as continue to improve them.  If you have a story about how an automated process has improved your life as an educator or if you have an idea for building a new one, we want to hear it! Please contact us.

It is our hope that these flows can free you from the manual aspects of teaching in remote and hybrid learning environments and give you back some time.

The post Flow templates for educators appeared first on Microsoft Power Platform Blog.

]]>
Hour of Low-Code http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/hour-of-low-code/ Wed, 02 Dec 2020 04:13:27 +0000 This year, we are commemorating Computer Science Education Week with a fun new week-long celebration that we’re calling the Hour of Low-Code. Computer Science Education Week (CSEdWeek) is an annual call to action to inspire K-12 students to learn computer science, advocate for equity in computer science education, and celebrate the contributions of students, teachers, and partners to the field. But we don’t ONLY want this to be for students–we want adults to get involved as well.

The post Hour of Low-Code appeared first on Microsoft Power Platform Blog.

]]>


We used to be those people. You know those people… the ones who believe that EVERYONE in the world should learn to code. Your kids should be coding, your grandparents should be coding, coal-miners should be coding…EVERYONE should be coding. We believed this because Computer Science, coding, and tech have dramatically changed so many of our lives for the better and we want everyone in the world to benefit like we have.

In the past few years however, we’ve realized that that mission of everyone in the world learning to code is simply not going to happen with such steep requirements. Not everyone has the time, energy, or interest to invest in getting a full Computer Science degree. This does NOT mean that people can’t still benefit from what Computer Science can do for them. But we can involve more people in problem solving when there are fewer gates in the way to start.

This year, we are commemorating Computer Science Education Week with a fun new week-long celebration that we’re calling the Hour of Low-Code. Computer Science Education Week (CSEdWeek) is an annual call to action to inspire K-12 students to learn computer science, advocate for equity in computer science education, and celebrate the contributions of students, teachers, and partners to the field. But we don’t ONLY want this to be for students–we want adults to get involved as well.

During the week of December 7 – 13, we want to introduce the concept of “low-code development” as part of Computer Science Education Week so that ANYONE in the world can learn to build apps, chatbots, websites and automation… without having to learn to code first.

We have created a list of curriculum and resources below that you can use to DIY your own Hour of Low-Code celebration for your home, workplace or classroom. There is something for EVERYONE in your life, whether they’re a K-12 student or an adult. Choose a project or set of projects that fits your interests.

Link to this page: aka.ms/HourOfLowCode

 

Students can automate the classroom with Power Automate

Can you think of a task that you have to do every week or every day? Can’t someone else do it? You can replace those tasks with automation instead.

One way to experience the Hour of Low-Code is to run a hackathon event to solve problems. This can take place across one day or an hour each day during the Computer Science Education Week.

Students Hack it! A Power Automate Hackathon
Design thinking for the classroom

A hackathon is an event where you identify real-world problems that affect you and your community. Students break out into small groups to tackle a worthwhile problem. By diagramming and exploring tools like Power Automate, students will create flows to automate tasks to solve their chosen problem. This hackathon is ideal for open-ended learning with real-world impact.

Slide deck

 

Educators can automate tasks with Power Automate

Introduction to Power Automate
Use Power Automate to increase productivity

Now, more than ever, educators face time management challenges; realizing that the age-old adage of “not enough hours in a day” is a daily reality for many. Educators need to win back some of this lost time. The good news is there is an app just for this! This app is Power Automate.

In this course, educators gain a greater understanding of what Power Automate is. Educators will also explore what Power Automate can do. Finally, educators will see just how Power Automate can benefit them in simplifying everyday tasks.

Link to course

 

 

Become an app maker with Power Apps

Below is a plan for how you can spend your time on each day of Computer Science Education Week. Completing a pre-made project is a good starting point for learning how to make apps. This series includes 3 projects, a free choice day, and a day for presentation.

Day 1: Create your own library
An app for cataloging your books

Staying organized is a healthy habit that has many benefits including clearing the mind and relieving stress. With the right tools you can organize everything from upcoming school assignments to words you’ve learned from another language, and even toys and games you own.

This tutorial will guide you in creating an app for cataloguing your own library. You can use it to organize books that you have read, books that you want to read, or simply books that you own. How you use it and customize it is up to you.

Link to project
Watch the video

Day 2: Create a word bank
An app for tracking or translating words you’ve learned

It can be overwhelming to learn a new language or a new topic. If you had an app to keep track of new words you have learned or key vocabulary words and how to use them, it could be more manageable.

This tutorial will walk through creating an app for saving words to a word bank and even translating them.

Link to project
Watch the video

Day 3: Create a musical instrument
A kalimba project

When you think of a musical instrument, you may imagine one made of brass or wood or strings, but music can come from anywhere.

This tutorial will guide you in creating your own kalimba, or thumb piano. It is a basic instrument that you can customize with your own sounds and graphics.

Link to project

Day 4: Free choice
Catch up, explore, or create your own app

Now that you have tried some projects, you can use this day to catch up on any that you have not completed. You can also use this day to learn from the templates that are available out of the box. If you’re ready, you can even create your own app.
 
Day 5: Presentation Day
Celebrate your learning!

A week of project-based learning is not complete without sharing what you have learned or created. Take the time with a format of your choice to share what you have learned from the projects or what you have made on your own or with a team.
 

 

 

Udacity course

Udacity Power
Build powerful business apps with Microsoft Power Platform

Our Udacity Course is a 10-20 hour course that will walk you through how to build a mobile app, add automation to it and then add some AI (artificial intelligence) magic to it without having to learn to code first.

By the end of this course, you’ll have something very cool to show off to your family and friends AND something you should definitely add to your resume and LinkedIn profile. Show off to us too!

Link to course

 

Share with us

This is the very first year we’re celebrating Hour of Low-Code, but it definitely won’t be the last. With the sheer number of job opportunities out there for those with tech education (150 million vacant tech jobs by the year 2025?), it’s never too early or too late to get involved.

Start your Hour of Low-Code journey today and tag us on social media so we can follow along and celebrate with you using hashtag #HourOfLowCode.

The post Hour of Low-Code appeared first on Microsoft Power Platform Blog.

]]>
Microsoft Ignite 2019 Session Recap: Microsoft Power Apps http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/microsoft-ignite-2019-event-recap/ Tue, 12 Nov 2019 07:59:13 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/microsoft-ignite-2019-event-recap/ Last week at Microsoft Ignite in Orlando, we announced many new features, and even a new name: Microsoft Power Apps. Each session had its recording posted shortly afterwards for those who missed it or for those tuning in at home. The entire catalog of videos is now available for viewing on demand.

Here is a reference list of the sessions most relevant to Microsoft Power Apps. Included are also a few select sessions related to Microsoft Power Automate and many that are general to Microsoft Power Platform overall.

The post Microsoft Ignite 2019 Session Recap: Microsoft Power Apps appeared first on Microsoft Power Platform Blog.

]]>
Last week at Microsoft Ignite in Orlando, we announced many new features, and even a new name: Microsoft Power Apps. Each session had its recording posted shortly afterwards for those who missed it or for those tuning in at home. The entire catalog of videos is now available for viewing on demand.

Here is a reference list of the sessions most relevant to Microsoft Power Apps. Included are also a few select sessions related to Microsoft Power Automate and many that are general to Microsoft Power Platform overall.

For a more complete list of related sessions, please visit: https://aka.ms/pa/ignite2019/sessions

Link to this blog post: https://aka.ms/pa/ignite2019

 

 

 

Keynotes & General Session
Vision Keynote

Satya Nadella shares a comprehensive look at the future of enterprise technology. A few key announcements and demos include: Azure Synapse Analytics, Azure Arc and Azure Quantum. Satya shares an innovative use of glass as a storage device for Warner Brothers. Microsoft 365 announcements include Project Cortex, Play My Emails in Outlook and a new Teams Chat button in Outlook. Spend some time getting excited about new technology and learning how to get things done faster.

Unleashing your organization’s creativity and innovation with a deep dive into the Microsoft Power Platform

The Power Platform (Power BI, Power Apps, Power Automate) represents a once-in-a-generation opportunity to unleash organizational creativity and innovation, by arming those closest to your business processes with the tools to analyze and transform them. And unlike past approaches to “low-code” application development and business intelligence, the Power Platform avoids chaotic “application sprawl.” Join James Phillips, CVP, Business Applications Group, to see how IT organizations retain control through an administrative approach that centralizes governance and policy enforcement – offering “guard rails” while empowering business users with intelligence – giving them the best of both worlds. Learn how some of the world’s leading organizations across industries have harnessed the Power Platform to eliminate their application backlogs, enhance insights, improve productivity, and transform their organizations at a pace previously impossible.

Empower everyone in your organization to drive digital transformation with the Microsoft Power Platform

Organizations have embraced the value of having data at the center of their business. It is coming from everywhere: web, social media, CRM/ERP systems, and people. But how can you enable everyone in your organization, regardless of their technical background, to leverage this data and drive better business outcomes? How do you democratize AI so it can work for all? That’s where the Power Platform comes in! By enabling users to Analyze, Act, and Automate it helps everyone to participate in and drive efficiency through digital transformation. Join the Power Platform leadership team and our growing global community of millions of active users that is driving this type of change everywhere.

Sessions related to Microsoft Power Apps
Power Apps top 10: Major new capabilities that are shaping the future of low code

Low-code app development is evolving rapidly, and Microsoft Power Apps is leading the way. This session recaps the incredible momentum in the platform – with a focus on showing off the top new features recently released that are expanding what’s possible for citizen and pro developers alike. From AI to external portals, we share a complete overview of the major innovation areas happening in Power Apps and how your can use these capabilities to bring the next level of digital intensity to your organization.

Enabling everyone to digitize apps and processes with Power Apps and the Power Platform

Learn how Microsoft Power Apps and the Power Platform enable everyone in your organization to modernize and digitize apps and processes. Discover how your organization, IT pros, and every developer within it can benefit from our low-code platform for rapid application development and process automation. This includes a fast-paced overview of pro-developer extensibility and DevOps, IT pro governance and security, as well as powerful capabilities to build intelligent web and mobile apps and portals.

Teams + Power Apps: 3 ways you can deeply customize Teams with low-code

You’ve built an amazing app in Power Apps, but all of your users are in Teams. Come learn how to customize Microsoft Teams using Power Apps and how to integrate your existing apps so your team can become even more productive.

Introducing Power Apps portals for external users

Learn how Microsoft Power Apps customers can create websites over data stored in Common Data Service that can be accessed by external users with a wide variety of identities including personal accounts, LinkedIn, and other Azure Active Directory organizations as well as allow anonymous browsing of content.

Using Power Apps component framework to build reusable custom user experiences

Power Apps component framework enables building reusable and responsive solution aware visual components which can be used across both model-driven and canvas apps. Learn how to build your own custom pro-dev components on the same framework that powers Microsoft Dynamics 365 Customer Engagement unified interface applications and AI builder experiences. Take your app experience to the next level!

Optimize your apps with quality tools for Power Apps

Learn how to build, test, and troubleshoot high-quality and high-performance Power Apps apps by using built-in tools like App Diagnostics, Power Apps Test Framework, Solution Checker, and App Checker.

Not your father’s business app: The top five innovations in model-driven Power Apps that will impress users

See what’s new and coming next for the model-driven Power Apps experience, Unified Interface. In this session, learn about the latest improvements to Forms, Views and other end-user experiences, as well as the modern designers that enable you to quickly build rich model-driven Power Apps.

Building ISV solutions on the on the Microsoft Power Platform

Through the lens of an ISV/software developer, we walk you through the entire application development process showcasing what it takes to build a new, composite app from the ground up using out-of-the-box no-code/no-code tooling, to extending with custom code and publishing to Microsoft AppSource allowing you to reach 120M+ monthly active users. We also provide you a preview of new key capabilities we are delivering, specifically to empower the ISV ecosystem.

Modernizing InfoPath forms with Power Apps

Learn tips on how to find, triage and modernize InfoPath forms with Microsoft Power Apps and SharePoint. See what critical business processes look like when they take advantage of the full capabilities of SharePoint and the Microsoft Power Platform. See what’s in the roadmap for upcoming features.

The master class on building performance apps with Power Apps

Your app is slow? See how we take an existing poorly performing app and apply various performance optimizations and tricks to drastically improve its performance and responsiveness.

Sessions related to Microsoft Power Automate
Intelligent automation with Microsoft Power Automate

Microsoft is modernizing business processes across applications – bringing intelligent automation to everyone from end-users to advanced developers. Microsoft Power Automate is Microsoft’s workflow and process automation platform with 270+ built-in connectors and can even connect to any custom apis. In this session we cover this vision in detail, both in terms of what is available today, such as the new AI Builder, and a roadmap of what is coming in the near future.

Automate your business processes with Microsoft Power Automate: The end of swivel-chair automation

Process automation has become a fundamental need in the modern organization as the pace and scale of business continues to increase. Microsoft is poised to help the modern organization excel in a world where automation is a pivotal driver for business success. In this session, we are very excited to announce Power Automate’s entry into the field of Robotic Process Automation (RPA). With this powerful additional capability to Power Automate, Microsoft can help today’s organization automate processes across modern and legacy apps, between on-premises and cloud apps, all while being the only automation service natively integrated with Microsoft 365, Dynamics 365, Azure, and Power Platform. We will further demonstrate how Power Automate’s rich and broad capabilities are already being leveraged by the modern enterprise to give you a firsthand glimpse of the important benefits that Power Automate can offer you.

Learn How Microsoft Power Automate Is a the perfect automation platform to streamline workflow processes across your entire IT ecosystem

In this theater session learn about how Microsoft Power Automate offers a complete, end-to-end automation service for your entire ecosystem. In this session, we showcase how Power Automate can truly serve as the only automation service your organization needs. We also demo the latest Power Automate capabilities and show you how to use Power Automate to enhance your organization’s efficiency and potential.

Infusing intelligence into your Flows using AI Builder

Bring your process automation to the next level by infusing AI based intelligence. Learn how to leverage AI Builder models with Microsoft Power Automate in a completely no code way from training to automating.

Design and create business workflows automatically using Microsoft Excel, Flow, and Visio

Have you ever wondered what if you could automatically create process diagrams and automated workflows using complex process data in a few simple steps? Organizations handle a lot of process data in the form of spreadsheets. They also use Microsoft Visio to document these processes and workflows. And they then use Microsoft Power Automate to automate time-consuming business tasks and processes. In this session, we showcase how, with the Visio import from Excel and export to Power Automate feature, business owners can now create process diagrams automatically from data or draw them on canvas and with a single click export the workflow to Microsoft Power Automate with ease and simplicity.

Real world application of Microsoft Power Platform
Managing and supporting Power Apps and Microsoft Power Automate at scale

Learn how administrators and IT-Pros can manage the enterprise adoption of Power Apps and Microsoft Power Automate. Discover the features, tools and practices to monitor, protect and support your organizations’ data and innovations at scale. We share the top tips around governance, security, and monitoring requirements, as well as strategies employed by top customers to help you land low-code powered digital transformation in your organization.

Bottom up innovation with Microsoft Power Automate

Today’s organizations are continuously searching for ways to become more efficient while remaining cost effective. With Microsoft Power Automate and the Power Platform organizations can democratize innovation and enable the people closest to the problem to have the tools to fix the problems! In this session, learn about the obstacles to adopting democratized technologies, how to overcome them, and how to become an organization with bottom up innovation advocates from IT professionals to end users.

Show and tell: How Microsoft uses Power Automate to empower its own employees to do more

Hear about the top ways that Microsoft uses Power Automate internally, and discover ways to roll out Microsoft Power Automate more extensively inside your organization.

Tried and tested techniques for establishing a Power Apps Center of Excellence

Learn how enterprise IT departments have established a Center of Excellence (CoE) to drive internal adoption of Microsoft Power Apps and handle governance for hundreds of production apps. Using examples from organizations such as London Heathrow airport, SNCF, Chevron, and internally at Microsoft, we walk through strategies, best practices, and tooling approaches that have helped land low-code powered digital transformation.

Adopting the Microsoft Power Platform in the enterprise

More and more large organizations with complex missions are connecting siloed data, engaging customers, and driving ROI with amazing custom solutions on Power Platform — Microsoft Power Apps, Power BI, Microsoft Power Automate and the Common Data Service (CDS). Mature organizations realize that rigor, discipline, and best practices are needed to truly adopt such a nimble, yet versatile, platform at scale. This session introduces the Power Platform Adoption Framework and gives an overview of its start-to-finish approach to help you and your organization get the most value out of any form of Power Platform available to you today. We also share how other enterprise organizations have scaled with large and complex needs using Power Platform and what were the tools, best practices and patterns they explored and used to become successful adopters.

Top ten tips to securely rolling out Microsoft Power Apps and Microsoft Power Automate to your organization

Get ahead of common issues with broader enterprise adoption of Microsoft Power Apps and Microsoft Power Automate. We share the top tips to common governance blockers, security questions, and monitoring requirements, as well as strategies employed by top customers of the platform.

How Microsoft uses Power Platform and AI for internal critical revenue processing

In this session, we show you the possibility of harnessing the Microsoft Power Platform to create enterprise grade solutions for your organization. We provide you details on how Microsoft leveraged the Power Platform to create its internal revenue process platform which handles over $100B in transactions and contracts every year. We specifically focus on how Microsoft Power Automate helps automate business processes and accommodates customized workflow management moving Microsoft revenue contracts and transactions through a structured process. With this solution, Microsoft saves on average 20,000 hr/month all while improving throughput by 20%. This session enables you to learn the potential of the Power Platform and how it can unlock significant capabilities for your organization.

Building end-to-end blockchain solutions with Microsoft Power Apps, Microsoft Power Automate, and Azure Blockchain Service

In this session, learn how to bring together Azure Blockchain Service with Power Apps and Microsoft Power Automate to build an end-to-end blockchain solution. Discover how you can easily leverage Azure Blockchain Service to deploy and manage blockchain networks, how the Azure Blockchain Connectors for Power Apps and Microsoft Power Automate provide the ability to read, write, and react to events from smart contracts on those networks, and how, together with the over 250 other connectors, they provide a low code/no code approach to integrate blockchain into legacy applications, services, and data.

Data collection at scale powered by Adobe Sign web forms integration in SharePoint

There is massive amount of data captured in forms today, however there is no easy way to transform the data to your enterprise system of record. We are announcing new Adobe Sign web forms integration in SharePoint Online, which allows customers to create and embed reusable digital web forms, collect thousands of agreements and data back to SharePoint in real time. We show step-by-step how you will transform customer experience, and speed up digital enrollment and approval processes with this powerful capability.

Increasing profitability in field service via Microsoft Power Apps

In this session, view a customer case where job profitability is maximized through “What If” scenarios modeled with a Canvas App. This scenario based modeling helps ensure successful bids and increased profitability. Estimators are able to model the desired margin for their deal before submitting to the client. Once the job is scheduled, changes in the work can require additional modeling to ensure that delays or unforeseen requirements do not endanger profitability.

Technology and activism: Donation traceability using Azure Blockchain Services

In this session learn how our team designed and deployed a multi-tenant blockchain solution using Azure, Microsoft 365, and Microsoft Power Apps to collaborate and trace donation data for a hurricane disaster in Puerto Rico. Explore how we maintain one version of the truth for the donation data which can be shared safely across political and geographic boundaries. See demos and learn how blockchain services on Azure can be used to enable multi-party state-based business processes, traceability, and more.

Configure, don’t create: How Microsoft automated its own complex business processes with Dynamics 365 and AI

Join Microsoft Core Services Engineering and Operations (CSEO)—the experts who build, deploy and operate the systems that run Microsoft—to learn how they automated complex business processes and transactions with Microsoft Dynamics 365, Microsoft Cognitive Services, and Microsoft Bot Framework, with AI at the heart of this solution. They’ll give you a peek into their project COSMIC (Customer Obsessed Solution Management and Incident Care) —a contract and transaction-case management solution—that will inspire you to automate your own complex business processes and take full advantage of out-of-the-box Dynamics 365 functionality. They’ll even share COSMIC with you—available now on Microsoft AppSource.

Building a Microsoft ISV partner: Lessons learned from a successful ISV start-up who quadrupled in 12 months by innovating using Microsoft Cloud

Microsoft focus on ISV partners cannot be missed. There has never been a better time to be an Independent Software Vendor who builds business solutions on Microsoft cloud. However, in a crowded technology market, a good idea is not enough, and innovation that delivers no tangible benefits doesn’t help your customers. Listen to Mohamed Mostafa, Microsoft MVP and Solutions Director at TechLabs London, talk about the success his firm has had in the past 12 months by building innovative business solutions on the Microsoft cloud. Hear how Microsoft cloud innovation can deliver significant cost saving and tangible revenue growth to your customers and learn how to apply innovation successfully to differentiate your ISV solution from other competitors.

Sessions general to Microsoft Power Platform
Learn to configure a virtual agent in minutes, not days

In this session, discover how to easily configure a virtual agent in a matters of minutes and how you can extend it beyond its initial capabilities. If you always wanted to build a chatbot but found it too complicated, you definitely want to join us to learn how Power Virtual Agent can help you become a master chatbot creator!

Connecting Power Apps, Microsoft Power Automate, Power BI, and the Common Data Service with data

In this session, we discuss how to use the Common Data Service, connectors, dataflows, and more to connect Power Apps, Microsoft Power Automate, and Power BI to your data.

Learn how to create AI Builder models and use them across the Microsoft Power Platform

Learn about the functionalities and best practices to achieve your digital transformation through the Power Platform and AI Builder. AI Builder provides AI templates (Binary Classification, Text Classification, Object Detection, Form Scanning) that you can tailor to easily add intelligence to your apps and processes in Power Apps and/or Microsoft Power Automate.

SharePoint + Microsoft Power Automate : Leading the power of digital transformation

Experience what it means to be leading the power of digital transformation and winning better outcomes with SharePoint Online + Microsoft Power Automate. In this multi-part, live demonstration, see how SharePoint facilitates better outcomes through rich integrations with Microsoft Teams and the Power Platform. Get the tools you’ll need to enable high-value workflow solutions, including automated insights; all of which was never before possible with older tools such as SharePoint Designer!

Planning and managing licensing and capacity for Power Apps and Microsoft Power Automate

Do you have questions around how to plan licensing and capacity for your organization’s or team’s applications or processes? If so, then this is the session for you. We talk about the current and incoming capabilities of the platform and how you can take advantage and choose the right plans for your organization.

Microsoft Azure + Power Apps: Build web and mobile apps amazingly fast on Azure SQL with low-code

What is the value of building apps on the Microsoft Power Platform as an existing user of Azure services? Why should you care? How will Power Platform help you as an Azure user to more broadly provide access to your services? In this session, we walk you through the value prop for developers building apps on the Power Platform and highlight why its relevant for organizations already investing in Azure.

Microsoft Power BI, Flow, and Power Apps: Connecting to data using the on-premises data gateway

Hybrid data landscapes are common for our enterprise customers. The on-premises data gateway enables connecting to data sources “behind a firewall” from online services (like Power BI, Microsoft Power Apps and Microsoft Power Automate) without the need to move your data to the cloud. Come to this session to learn about gateway architecture, configurations and new management features released recently.

The Power Platform for SharePoint People

Are you a SharePoint developer or power user that still enjoys the comfort of InfoPath and SharePoint Designer? Confused by lots of licensing details of extras beyond Office 365 in the Power Platform toolset? Come to this session to see Microsoft Power Apps, Flow, and Power BI used in SharePoint-centric scenarios that you care about.

This demo-heavy session shows you how to use Power Apps to build custom web parts, how to source Power BI reports from SharePoint data, and how to use Microsoft Power Automate to get your workflow done. The session includes not-so-obvious solutions for common problems such as multi-page forms, parent-child lists, cascading drop downs, and even using Power Automate to set item level permissions on SharePoint content.

Session is held in the immersive multi-screen Microsoft Technology Center Envisioning Center in The Hub.

Building and troubleshooting custom logic in Common Data Service

In this session, we review how to extend Common Data Service with custom business logic. And, perhaps equally importantly, we dig into how to troubleshoot when things go wrong.

Power Platform management: Tips and tools to start your rollout

Are you an administrator responsible for governing and maintaining the Power Platform? Learn about the new platform tools provided to empower you as you roll out these key business tools across your organization and begin building your own Power Platform Center of Excellence.

In the demo-heavy session, we look at the use of the Center of Excellence Starter Kit; the various administration tools available for administrators looking to manage and monitor the use of the Power Platform; and answer your questions.

Session is held in the immersive multi-screen Microsoft Technology Center Envisioning Center in The Hub.

Learn how to navigate and leverage Microsoft AppSource to extend the Microsoft Power Platform

Using one of the Microsoft Power Platform products – Power BI, Power Apps, and Microsoft Power Automate – but interested in extending functionality relevant to your function or industry? In just 20 minutes, we show you how to use Microsoft AppSource to identify apps that extend the products you already own. Whether you are looking for AI apps or industry specific extensions, we show you how you can quickly discover, try, and even buy SaaS apps and extensions that work with the Power Platform.

Power Platform evolution inc. AI Builder and Portals

Discover the journey that the Power Platform has made over the years, with a focus on the benefits and capabilities of Power Apps and Flow. Gain a deeper understanding of how the platform combines and leverages all 3 Microsoft Clouds, ensuring the most value for your investment. We’ll highlight the platform’s latest capabilities, namely AI Builder and Power Apps Portals. Insights from live demonstrations that cover how to embed a Power App inside a Power BI Dashboard, resulting in real time updates to the dashboard, as well as making use of AI Builder.

Session is held in the immersive multi-screen Microsoft Technology Center Envisioning Center in The Hub.

Democratizing self-service data preparation within Microsoft Power BI, Power Apps and Power Automate using Dataflows

Preparing and defining ETL for insights is a significant challenge for businesses today — ingestion, cleansing, transformation, and enrichment are labor-intensive and time-consuming tasks which require deep technical skills. Microsoft has recently introduced advanced data prep with dataflows for the Power Platform, a suite of self-service low-code/no-code features and capabilities for business analysts and citizen developers to easily process and unify their data and store it in Azure-based data-lake storage. With these new capabilities, Microsoft offers a solution for any business need — whether you want to prep your data with ease, using a familiar built-in Power Query experience, or leverage the full Azure stack for more advanced use-cases. Join this session to learn everything you need to know about dataflows and how to easily prep your data, leverage Microsoft’s standardized schema (CDM), improve time-to-value, eliminate data silos, and create one source of truth for your organizational insights.

Embracing citizen developer adoption in a customer engagement world using Microsoft Power Platform

Share best practices for challenges and opportunities of utilizing both citizen developer adoption and customer engagement models within the same organization. Deployment of customer engagement with increasing regulation around privacy means an increased focus on governance and controls around data. Equally the opportunities presented to an organization through low code application citizen development are significant. We share practices and experiences of combining and managing these needs simultaneously within an organization using Power Platform.

Build a more engaged and data-driven customer and employee culture with Microsoft Forms Pro

Come learn about Forms Pro and see how to integrate survey data with customer data to drive deeper customer engagement with this new survey tool. During this session, we cover a live demo and show you to leverage Forms Pro across Microsoft Dynamics 365, Microsoft Power Automate, and Power Apps.

Exporting CDS data to Azure Data Lake – enable modern analytics and gain insights on your data

The Export to data lake service enables continuous replication of CDS (Common Data Service) entity data to Azure Data Lake which can then be used to run modern analytics such as Power BI, Machine Learning, Data Warehousing or other downstream integration purposes. The Export to data lake service simplifies the technical and administrative complexity of operationalizing entities for analytics and managing schema and data. Within a matter of minutes, customers will be able to link their Common Data Service environment to a data lake in their Azure subscription, select standard or customer entities and export it to data lake.
Any data or metadata changes (initial and incremental) in the Common Data Service is automatically pushed to the lake without any additional actions.

Compliance, privacy, and securing your data in Dynamics 365 and Power Platform

To help meet the needs of customers with unique regulatory and compliance requirements as well as expand our global footprint, we continually launch our cloud services in new infrastructure regions. Sovereign and regional datacenter infrastructures, stimulate economic development for both customers and partners alike, enabling organizations to realize the benefits of the cloud for innovation, as well as bolstering the technology ecosystem that supports the innovation. Learn about infrastructure strategy, user and application management of our portfolio of out-of-the-box applications and services and how Microsoft Dynamics 365 and Power Platform meet compliance, security, and the privacy requirements of both customers and partners.

Dynamics 365 and Power Platform: Data residency and migrations

Customers that have local data residency requirements, often in industries like healthcare and government continue to use our cloud services from the regional datacenters. There is a need to understand about data migration across our out of the box applications and services. Join this session to learn more about data residency and migrations along with resources that we have available for our customers.

Sessions by the community and MVPs
The future of business applications: One platform to rule them all?

Join James and Sarah as we talk about how the power platform is critical in the quest for empowering organizations to do more, and what the plan is to manage the expected growth and scale that Microsoft is hoping to achieve in doing so. We also talk about community, stories, and how the story of the connected platform can empower all ages to get involved in technology and not be afraid of the future. For more information on using the power platform head over to https://aka.ms/LearntousePowerPlatform.

Microsoft Power Apps makeover: Basic to beautiful

Have you built a Power App but find the look and feel leaves a lot to be desired? Then this is the session for you! We examine design guidelines and tips and tricks to take your apps from basic to beautiful. Learn how you can make your apps performant and visually appealing for your users.

Top three tips for beautiful Power Apps

Do you want to move beyond the basic and create a beautiful UI for your Power Apps? In this session, learn the top three tips to make your Power Apps more visually appealing.

STILL not using Power Apps with SharePoint? An overview of why you should

For managers, developers, or makers in an organization that use SharePoint but currently have Microsoft Power Apps disabled – attend this session to gain insights on:

• Business benefits of enabling and using Power Apps.
• Development benefits of enabling and using Power Apps.
• Determining when to enable Power Apps and/or put governance in place to effectively manage it
• Where to skill up appropriate staff to use Power Apps effectively and minimize distractions and risks

This session provides an overview of these topics to help folks determine if there is enough interest to take another look at what Power Apps with SharePoint can do for an organization.

The Power Apps Data Table Control: Why, how, what’s new

Get a quick Maker and App Builder overview of the new and improved Power Apps Data Table Control. See how quickly it can be added to an app to easily create SharePoint-like views in just a few steps rather than building individual controls connected to a data source. Configure a connection to a SharePoint list, define which fields are displayed, and define both filtering and sorting of data. Once the control is in place, see how it can be used to create legacy-like interfaces for selecting records and displaying additional data, controls, and functionality.

Improve your Dynamics 365 and Common Data Service data quality with Microsoft Power Automate

Using the Common Data Service for Power Apps and Microsoft Dynamics 365, data quality can be a problem. Many companies have incomplete or duplicate contact data in their databases, which can frustrate users and cause business disruption and governance issues. This is especially amplified with regulatory compliance for GDPR and other privacy laws.
In this session, see a real-world example of how Microsoft Power Automate can be used to score records and identify duplicates, as well as automate data cleanup.

Become a Microsoft Power Automate super hero

In this session, learn about Microsoft Power Automate features and approaches that are essential if you really want to create enterprise business process flows. Both technical and technical features that we have learned through 10 real-world flow projects. New patterns, tips and tricks, some advanced expressions, JSON and CDS techniques are detailed. New architectures as well as tools limitations and workarounds. Advanced approvals, advanced SharePoint integration, document management, custom connectors, and much more.

Energize mission critical enterprise business processes with Microsoft Power Automate: Patterns, tips and tricks

Microsoft Power Automate can be used by power users and by developers to automate business processes and help organizations improve their efficiency and reduce costs. Having continuously worked with Microsoft Power Automate since the beginning of the product in 2016, we have defined and identified a set of patterns, tips, and tricks that help you boost your enterprise flow projects. We cover:
• How the roadmap and the licensing model of the product can impact your architecture
• Built-in limitations and workarounds
• Microsoft Power Apps calling flow: security implications
• Complex approval patterns
• State machine, componentization, and reusability in Microsoft Power Automate
• ALM and Azure DevOps
• Advanced SharePoint flow integration
• CDS based application or SharePoint: how to

Making the most of out-of-box approvals in SharePoint Online

Do your SharePoint power users create approval processes for documents or forms? The approvals action in Microsoft Power Automate is an extremely useful and versatile action for these scenarios. The requirements of your workflows may range from simple to complex, and they all vary when it comes to flexibility and functionality. In this session, learn the capabilities of Microsoft Power Automate approvals, and how to successfully build your various business processes in SharePoint. For example, learn how to build parallel versus serial, one or many approvers, or escalate/reassign approvals when out-of-office.

Automating your business processes with Microsoft Power Automate and Teams Integration

Microsoft Power Automate is the glue that brings together your data from Office 365 apps and other services. Power Automate directly integrates with Microsoft Teams to enable users to create, manage, review and approve, and interact with the Power Automate Bot directly from within Teams. Let’s learn how you can quickly create flows and use the Power Automate Bot to boost your team’s productivity with business process automation.

Learn:
– How Power Automate is integrated in Microsoft Teams
– What Power Automate Bot is and what it can do
– Ways to automate your business processes within Teams using Flow
– How to create adaptive cards that can be sent through channel and chat messages

Getting started with Power Automate Approvals

Organizational processes that require the approval of requests, documents, and other content are great candidates for automation using Microsoft Power Automate. Using the flow approval features you can centralize approvals and save a significant amount of time.

In this session, we cover:
• How to create flows to automate your approval processes
• Approval flows that are natively built into SharePoint and how to configure them
• Ways you can review your approval requests, whether you are in the office or on the go
• The Power Automate Approval Center capabilities

Automatically update business process flow stages using Microsoft Power Automate

Business process flows require an end user to move to the next stage. With the power of Microsoft Power Automate, stages can be automatically updated in CDS. Magic!

This session covers multiple types of end users that drive the automatic update to the next business process flow stage through external users via Microsoft Dynamics 365 Portals and internal users via model-driven app.

Microsoft Power Automate for SharePoint in twenty minutes

Now’s the time to begin using Microsoft Power Automate for your SharePoint automation tasks. In this session, see how Microsoft Power Automate compares to SharePoint Designer workflows. Learn how to use Power Automate for the tasks you may now be doing (and many that were never possible) with Designer workflows. All in 20 minutes!

If you are still using Designer workflows for SharePoint automation, this session is for you.

Microsoft Power Automate: Approvals in twenty minutes

In this demo-rich session, learn how to create a simple Microsoft Power Automate approval. First, see how you can leverage Office 365 features to determine to whom an approval should be submitted, then learn about the different types of approvals. Finally, see the options available for an approver to take action and how to respond to an approval decision. All in 20 minutes! Attend this session and learn the skills you need to immediately start creating approvals in Microsoft Power Automate.

Express yourself: Elevate your Microsoft Power Automate game by using expressions

You have been automating all your business processes with Microsoft Power Automate and want to take them to the next level, but don’t know how. Yes, there are tons of actions that can be added to flows but having a high number of them may become extremely overwhelming, especially when building large flows. Using expressions can help in reducing the number of actions a flow can execute, which in turn, reduces the runtime of the flow. In this session, learn how to embrace expressions, which actions can be replaced by expressions, and how to build them by seeing some awesome, real-life flow solutions.

The power of the Microsoft Power Automate community

Whether you’re starting your journey or you’re an expert, the Microsoft Power Automate community is your main source to find answers for all your questions and for all your learning. Please join this session to learn:
• How to use Microsoft Power Automate and contribute to the community
• Tips to become a Super User
• Real-life lessons of things learned in the community

Hey, you may even become a Microsoft MVP.

Microsoft Power Automate best practices: 20 tips in 20 minutes

Get 20 tips on building flows using best practices, principles, methods, and design patterns so that they run as expected. Power Automate makers will learn how to create robust flows more easily and efficiently. Each best practice is described and includes a practical example.

Microsoft Power Automate: Building enterprise-ready flows

In this session, learn how to create flows that run flawlessly and handle any unexpected errors. See demos of best practices for building enterprise-ready flows. Learn the life cycle development of a flow: planning, designing and making, testing, deployment, troubleshooting, and maintaining. At the completion of this session, you’ll understand the principles, practices, methods, and patterns for designing flows that will make you the Power Automate Master at your organization and the envy of your peers!

Create business applications with Microsoft Teams and Microsoft Graph

In this session, learn how to create customized business applications with Microsoft Teams, the Office 365 platform, and Microsoft Graph. Learn how to combine these technologies to provide a self-service Teams creation app to create Microsoft Teams that come pre-populated with documents and information all ready to go so end users are able to start their work immediately. See these capabilities demonstrated in a real-world emergency response scenario where Microsoft Teams is used to facilitate communication and organize groups of emergency respondents to help in times of crisis.

Professional Power Apps development patterns: Error handling, logging, and telemetry

In this session, learn patterns for error handling, logging, and collecting telemetry in Microsoft Power Apps. Learn how to use Global and Context variables to handle errors, update the user interface accordingly, and log errors and events to Azure Application Insights. Also, learn how to enable debugging and diagnostic functionality inside Power Apps for application owners and administrators.

Kaizala and Microsoft Power Platform

This theater session explores how you can use the Power Platform with Kaizala app to create powerful low-cost solutions for firstline workers.

Kaizala is a messaging based app that empowers employees by giving them access to the tools they need to connect with team members and manage their schedules.

The open directory approach to Kaizala means that it’s much easier for organizations to give contractors and temporary employees access to the services that they need. It’s also easier to enable services for firstline workers who might not have a corporate email account or work computer.

This session explains how you can leverage Microsoft Power Automate and Power BI to create powerful business solutions at low cost.

Exam Prep | MB-200: Microsoft Power Platform + Dynamics 365 Core

This Exam Prep session is designed for people experienced with Dynamics 365 Customer Engagement in taking the MB-200 (Microsoft Dynamics 365 Customer Engagement Core) exam and who want to gain the Functional Consultant Associate certifications.

You can expect to review the topics covered in this exam in a fast-paced format, as well as receive some valuable test taking techniques.

You will leave with an understanding of how Microsoft certification works, the difference from the old exams to the new role-based exams, the key topics covered in the exam, and an exhaustive look at resources for getting ready for the exam.

The session is led by a Microsoft Certified Trainer (MCT), experienced in delivering sessions on these topics.

Common Data Service data modeling tips and tricks

In this session, we discuss some of the complexities of data modelling on the CDS. We review the impact of all those options we have when creating new entities. We explain how and when to use some of the different particular data types and their limitations. Finally, we discuss some of the crucial design decisions when building your data model based on real-world scenarios across industries.

Security modeling in the Common Data Service

The Common Data Service security model is extremely flexible and powerful. However, using it without control, it can yield unexpected results and impact the performance of our app. In this session, we review the platform security principals and how they are implemented. We discuss the best options for different practical scenarios using real examples and explain techniques to design and manage complex security models, including cross-business teams, VIP records, Document Management security.

Azure DevOps for Power Platform ISVs: Automate ISV solution deployments and release regular upgrades and patches to all customers concurrently

The widely anticipated Azure DevOps Power Apps build tools are here. If you are a Microsoft ISV partner, the ability to automate the deployment of regular updates and patches to all your customers concurrently must sound like a dream! Now this dream is becoming a reality for Microsoft ISVs with Power Apps Build Tools for Azure DevOps.

As a Microsoft Power Platform or Microsoft Dynamics 365 professional, you must have considered, even if not actually implemented, DevOps in every project you worked on, ISV solution or otherwise. Join our Microsoft MVP, Mohamed Mostafa, to learn how to build fully automated concurrent deployments of your ISV solution to all your customers directly onto their environments using Azure DevOps Pipeline.

The post Microsoft Ignite 2019 Session Recap: Microsoft Power Apps appeared first on Microsoft Power Platform Blog.

]]>
Less Code, More Power http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/less-code-more-power/ Mon, 04 Nov 2019 12:40:08 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/less-code-more-power/ When the tools for problem solving involve less code, more individuals can participate.

The post Less Code, More Power appeared first on Microsoft Power Platform Blog.

]]>
A few weeks ago Dona Sarkar had written the first tweet with the hashtag #LessCodeMorePower. As more and more of her audience members at the Dev Up Conference were mentioning how they were inspired by Samit Saini and his growth, Dona was validating a point that a global movement was on its way:

The sentiment resonated with me not only in its simplicity, but also its truth: when the tools for problem solving involve less code, more individuals can participate. Traditionally, in a given industry or organization there is a distinction between someone who does a job and someone who solves problems for that job, in this case, with code. So when the prerequisites for learning to code are fewer and all parties have access to and can understand the tools, the overall population of problem solvers expands. ‘Less Code More Power’ is an inclusive message.

In one hashtag, Dona had put into words the reason why I was willing to take a chance on PowerApps when many other mature options existed.

 

The Conundrum

Resources for learning Python, C#, Javascript and all of the programming languages are widely available. Many of them are free with communities eager to help answer questions and tackle challenges. I can search online and find videos tutorials of even the most obscure solutions. There are also videos of those outside of the tech industry who have shared stories of how they had taught themselves how to code and found jobs at Microsoft and Google. It is both inspirational and aspirational to learn how to code when it is not one’s day job.

But as widely available and free as all the resources are to learn how to code, why doesn’t everybody just do it? What’s holding people back? While I cannot speak for others, I share my experience and why #LessCodeMorePower made the difference for me.

For context, coding had not been part of my day job or within my job description. To be exact, I was previously an elementary school teacher. The closest thing to code I interacted with was Excel, and with it, I created spreadsheets to solve teacher problems such as a planbook that generated sub plans in Word; it was a serious time saver. I had always wanted to upgrade those skills but found the commitment daunting as I describe the excuses I would make.

 

Excuses, excuses

Some of these excuses may sound familiar to you as well:

I don’t have time

As a teacher, I had the luxury of having time off for winter and summer break just like students do. Time is relatively more plentiful then. Yet during the school year, I would be occupied planning, teaching, grading, and attempting to have work-life balance. It wasn’t impossible, but highly discouraging to invest time into learning a new skill as complex as coding when I had other priorities.

It’s not my job

There are many effective websites available that I had my students use. Supply was not a problem, but each website only fulfilled one aspect of instruction and learning. Furthermore, the sites did not communicate with one another. I would need to go from one site to another to get the information I wanted. That meant having to memorize more usernames and passwords–for both myself and my students. But I wasn’t a software developer and it wasn’t my job to do something about this problem.

It’s too late

Computer Science had been synonymous with a four-year college degree to me. Considering I had multiple degrees already, I felt too burned out to take any more university classes–and accumulate any more student debt. I was ‘done’ with school.

It’s not for me

I believed I was a lifelong teacher. Whether designing a lesson or helping a student find a friend, I loved every part of it. I could not imagine myself doing anything else. And I certainly did not have a perception of myself as a ‘developer.’

 

No more excuses

After years of making these excuses about why coding was not for me, PowerApps had come along and upended all assumptions I had about learning to code. From my initial experience, I immediately noticed the similarities between PowerApps and Excel.

  • Functions like Sum() and If() work similarly in PowerApps–and with improvements.
  • The expression language also reads the same: starting with evaluating the innermost argument and working outwards.
  • The expression language is more semantic and human readable than other code I had seen.

I knew Excel inside-and-out. So the familiarity of PowerApps to Excel made it a much more attractive platform to create apps than Python or Javascript for which I had no experience. When I’m teaching my students, I take inventory of their prior knowledge. What do they already know that I can connect new learning to? In the same way, when I’m thinking about what I want to learn, I’m looking for what skill sets overlap what I already know? The daunting wall of prerequisites, 4-year degrees, and excuses that I had associated with learning to code began to crumble:

I don’t have time. With so many overlapping functions and patterns with Excel, the time to learn was significantly less. I not only had time to learn PowerApps, but to learn during the school year.

It’s not my job. It still wasn’t in my job description to create apps, but I realized a new moral imperative. Were I to learn how to make apps, I would be at a cross-section in which I had the pedagogy of a teacher with the development skills of a software engineer. I could finally make the apps for my classroom that don’t already exist, but should. I could teach others like me who had no background in coding to take the same path.

It’s too late. All these years where I had hit an upper limit of what I could (and should) do in Excel, I had felt like an old dog that couldn’t learn new tricks. Now this old dog had many new tricks to learn. Knowing that I could add onto what I already knew in Excel was a significant morale booster–and it didn’t require a 4-year degree as I proved to myself in my first weekend with PowerApps.

It’s not for me. This last excuse took me a while to overcome as it concerned self-perception. Every new app or functionality I created gave me the positive reinforcement that I could achieve. And seeing my app updated after clicking save and publish provided me the instant gratification I needed to validate that I was learning. I inched closer and closer to acknowledging that I was no longer just a teacher. I had become a teacher-developer.

 

It’s your turn

So when I saw the hashtag #LessCodeMorePower for the first time, it reminded me of my roots–my origin story. Why was I able to learn what I never expected to learn? Somebody created a tool that removed the barriers to learning and challenged my excuses.

To you, my reader, I ask: what does ‘Less Code More Power’ mean to you? I have shared my thoughts and want to hear yours. Tweet your thoughts with the hashtag #LessCodeMorePower.

And welcome to the movement.

The post Less Code, More Power appeared first on Microsoft Power Platform Blog.

]]>
Welcome our new PowerApps MVPs! http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/welcome-our-new-powerapps-mvps/ Tue, 05 Mar 2019 23:01:58 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/welcome-our-new-powerapps-mvps/ If you have spent any time in the PowerApps Community, you have probably noticed regular voices through community blog posts, events, and social media. Our MVPs are an elite group of makers who create extensible solutions, share their knowledge, and inspire.

The post Welcome our new PowerApps MVPs! appeared first on Microsoft Power Platform Blog.

]]>

If you have spent any time in the PowerApps Community, you have probably noticed regular voices through community blog posts, events, and social media. Our MVPs are an elite group of makers who create extensible solutions, share their knowledge, and inspire.

The skills and voice of our MVPs are invaluable to our community and it shows. It wouldn’t be surprising if you recognized some names. Whether it’s writing blogs, streaming videos, or speaking in front of audiences of hundreds and thousands, our MVPs carry our love of PowerApps to all parts of the world.

In the past two months, we have welcomed some new MVPs to the Business Applications category and specifically to PowerApps. Please join us in celebrating the MVP awards of these distinguished newcomers.

 

Ashlee Culmsee @AshCulmsee

 

 

Sandy Ussia @SandyU

 

 

April Dunnam @aprildunnam

 

 

Vivek Bavishi @that_API_guy

 

 

Anton Robbins @Anton_Rob_Benz

 

 

Hiro Nagao @mofumofu_dance

The post Welcome our new PowerApps MVPs! appeared first on Microsoft Power Platform Blog.

]]>
Components: Start your Journey with Reusable Controls http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/components-start-your-journey-with-reusable-controls/ Mon, 25 Feb 2019 18:11:18 +0000 In my first month of joining Microsoft, Emma Cooper, a Program Manager on the PowerApps team, knocked on my door with a shine of delight in her eyes. “You can copy and paste controls from one tab to another.

The post Components: Start your Journey with Reusable Controls appeared first on Microsoft Power Platform Blog.

]]>
In my first month of joining Microsoft, Emma Cooper, a Program Manager on the PowerApps team, knocked on my door with a shine of delight in her eyes.

“You can copy and paste controls from one tab to another. Do you want to try it out?” Emma knew my answer without me needing to say a word. My inner geek already opened up a tab and I was in PowerApps heaven.

But it was not yet time to share this wonderful news.

Emma Cooper announces the completion of copy paste feature.
Emma Cooper announces the completion of copy paste feature.

So when I saw the first demo of the reusable component feature, I knew I would have an even harder time keeping it to myself. Our community has been asking for reusability of controls and formulas. But, again, it was not yet time to announce them.

Here was a feature that would let me simplify the construction of my apps even further. Not only could I save myself a copy paste, but I could revise the original (master-instance) and have its changes reflected across all screens of my app. I could export my favorite component and import a copy into another app.

I thought that was amazing.

I was thinking too small.

A component can have custom properties of any type.
A component can have custom properties of any type.

Brewing in the creative minds here at PowerApps was a way of taking this component capability even further: custom properties. Thinking of the properties that I had come to know and love–I could now define my own! Text, numbers, values, colors, records, tables… I could make properties of any type for whatever purpose I have.

Let me put this into perspective: I have pushed the limits of PowerApps to do things beyond what it is expected to do. But I must confess that while I have worked with components extensively, I have not yet come close to reaching the full power of custom properties.

So after holding in my eagerness for all this time, it is my privilege and my joy to announce to you on behalf of our hard working team that components are now available worldwide for everyone to create, to share, and to fall in love with PowerApps all over again.

 

Try Components Now

At the time of writing, components are publicly available and will no longer require a Preview environment. You will need to enable the feature in the studio:
File > App settings > Advanced settings > Components

Be sure to toggle on the Components feature in advanced settings.
Be sure to toggle on the Components feature in advanced settings.

Let’s learn and explore component creation together. As a first step into making components, you can watch this video on making a numeric up and down component and view the introductory blog and videos in the section for Additional Resources.

In the coming weeks, you can look forward to videos on learning new best practices as you create components.

Just as you have informed features like copy paste, we invite you to share your feedback about components on the PowerApps Community Forum. When you write a post, please include the message tags “components” and “new features.” This will help us follow up with questions specific to component creation.

Remember to tag your posts with 'Components'
Remember to tag your forum posts with ‘components’ and ‘new features’

 

Current limitations

The Components feature is a work in progress. It is important to understand its current limitations which our team is working to lift.

Below are some to be mindful of as you implement components into your apps or your organization’s apps. You can view the full documentation for more details.

  • Known issue: locales that use non-English (United States) number or comma separators in formulas may receive an error when inserting a component. This issue has been resolved and a fix will roll out worldwide within two weeks (depends on your region).To mitigate this before then, you can revise the properties like Fill (of type Color) for your locale. For example, someone in Germany might revise the commas in a Fill property like this:
    RGBA(0, 0, 0, 0) -> RGBA(0; 0; 0; 0)
  • Instance: a master-instance of a component is scoped to the app. It is a local master. This means that changes you make to the master-instance only affect the copies of the component within the app. The changes do not affect the copies in other apps.
  • However, you can update the copies in other apps by explicitly re-importing the component ‘library’. It would automatically detect the masters imported previously and update them.
  • Images: it is not yet possible to package media files when importing a component, but this feature is coming soon.
  • Collections: using a collection within a component is not yet fully supported, but you can use variables today.
  • Data sources: data sources are not saved with components. Forms and data-grids are disabled due to this reason.
  • Nesting: components cannot be inserted into galleries, forms, and data cards today. Likewise, forms and data-grids cannot be embedded into components.

 

Additional Resources

Introducing Components blog by Yifei Wang

Full Documentation
Component Best Practices Playlist (Bookmark this!)

 

For introductory information on the component feature, please view these previous videos.

An Introduction to Components

Getting Started – Header Component

 

The post Components: Start your Journey with Reusable Controls appeared first on Microsoft Power Platform Blog.

]]>
Learning with Mr. Dang | Transferring Knowledge from Excel (Part 1) http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/learning-with-mr-dang-transferring-knowledge-1/ Sun, 01 Jul 2018 19:30:31 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/learning-with-mr-dang-transferring-knowledge-1/ If you come to PowerApps from using Microsoft Excel, you bring with you a significant body of knowledge that can transfer.

The post Learning with Mr. Dang | Transferring Knowledge from Excel (Part 1) appeared first on Microsoft Power Platform Blog.

]]>
Do you remember learning a second language in high school? You’d conjugate verbs, decline nouns, and translate sentences. Even though the language was new, you didn’t learn in a vacuum–you had a primary language for comparison. So when you learned about sentence structure, you’d connect similarities from your first language to your second. If you encountered an unfamiliar form, you could recall root words from Latin, Greek, or another parent language to derive its meaning. You took what you knew from one language and applied it to learn another:

You transferred knowledge.

If you come to PowerApps from using Microsoft Excel, you bring with you a significant body of knowledge about formulas and table structure that can transfer. Don’t let your skills sit idle. You can take an existing spreadsheet-making skill and augment it into an app-building skill. But how do you actually carry it over?

The Formula Reference

If you want to learn something new, look to those who already have. There is at least one thing in common between every member from our community that I’ve met: they had learned how to build canvas apps using the Formula Reference page. And so did I! 

So bookmark this page: Formula Reference

(Bonus: you can now enjoy it in the dark theme)

The reference page is an index of all the functions in PowerApps. Many of the functions will look familiar to an Excel user: If(), Sum(), and Concatenate() to name a few. Like the other docs from Microsoft, each page contains a definition of the function, its syntax, and samples of how it is used. 

The reference on its own is not a teacher though. You don’t learn a second language by reading a dictionary from A to Z. Below are concrete steps you can take to transfer your knowledge from Excel to PowerApps and learn the functions in a new context:

  1. Start a checklist.
  2. Take a quick inventory of functions you recognize.
  3. Build apps and return to the formula reference as needed.
  4. Search external documentation.
  5. Revisit the essentials from Excel: If(), LookUp(), and concatenation.

Since transfer is an involved process, this first part will explore steps 1 and 2. Understand that getting better at using formulas is only one of the many ways to grow as an app maker, not a requirement. Read on to find out how you can carry over this existing skill set.

Start a checklist

A checklist allows you to track the progress of what functions you know, and more importantly, what functions you don’t know. When you ‘know what you don’t know,’ you can set goals on what to learn next and when. From the start, you might think of copy pasting the page into OneNote for its excellent checkbox experience.

The list works, but let’s improve upon it. The alphabetical sorting is useful for finding a function on the page, but learning is a process of organizing and connecting content. Let’s group the functions by which category they belong to so that we build more relationships within the content we are learning. If you click the fx icon beside the formula bar in PowerApps, you can view predefined categories and which functions fall below them.

To add in the category metadata, copy the same formula reference list into an Excel spreadsheet–you didn’t think we were only going to be working in PowerApps did you? Insert a column where you type in the categories as they’re grouped in PowerApps or type in your own categories for more personalized learning.

You can filter the rows by category and copy each group into OneNote so you can get a nifty checkbox again. Your checklists are ready.

Learning is a process and I encourage you to make this checklist yourself as an exercise and to get a first look at all the functions. I’m also sharing my checklist (Excel | OneNote), so you can skip to the next section. Note that as new functions come along, you’ll need to update your checklist for your own records.

Take an inventory

In this step, you’ll quickly glance at your checklist to check off all the functions that are familiar to you. You can do this alphabetically among the categories, but let’s be purposeful again. If you view my checklist, you’ll see that I’ve applied yet another layer of organization to it so that each category of functions is placed in a strategic location.

Each row signifies a level of transferability–how faithfully does a function transfer from Excel to PowerApps:

  • Top row: text, math, datetime, logical
  • Middle row: color, information, action
  • Bottom row: table, data*

*Note that I added ‘data’ as one of my own categories.

 

The top row of functions should transfer 1:1 since spreadsheets display text, numbers, and dates.

  • If there is any difference between the platforms, it’s simply that you’ll just need to learn how to reference a control, a field, or a table instead of a cell/array.
  • Some of these functions have improvements on their Excel counterparts. If() no longer needs to be nested and can list conditions and outcomes in a series.
  • Although you might not use all of the math functions like Sin() and Cos(), you can check them off your list as well as they work as you would expect.
  • You should click into the functions you use often as you check them off during this step. There are some subtle differences in syntax, but they may follow a common pattern.

 

The middle row includes functions that are basic to running an app and are not found in Excel, but whose ability you can easily infer.

  • You can probably guess that Back() returns the user to the previous screen and that Exit() closes the app.
  • The functions for color are straightforward and RGBA simply separates channels for red, green, blue, and opacity.
  • A few of these functions are common to both platforms like IsBlank(), or they transfer based on their pattern. IsNumeric() and IsToday() follow a common pattern for conditions like ISNUMBER and ISTEXT are used in Excel.
  • The pages for these functions may be the first you visit when you start building apps.

 

The last row includes functions related to shaping tables and working with connected data. Both of these categories are mostly native to PowerApps, but understanding table structure in Excel will help in visualizing what each function does.

  • You will recognize Count, CountA, CountIf, and CountRows, which would normally take a range of cells as an array in Excel. But in PowerApps, you would use the name of a table or a filter on the table as an array to count.
  • Some functions will transfer for the experience they deliver. AddColumns() fulfills the functionality of a ‘helper column,’ but it is not a permanent column like it would be in Excel.
  • If you’re coming from Google Sheets, you’ll be familiar with Filter() and a few other functions in the table category.
  • It is okay if you do not check off any functions from these categories. Since they are the ones that add significant value on top of what you could normally do in a spreadsheet, they are naturally going to be new to you.

 

Check-in

Let’s review some big ideas about learning in this section:

  • there’s more to learning than just reading from A-Z
  • learning is a process of organizing and connecting content: we categorized each function
  • content can be organized even further: we sorted the categories by transferability

Now you have an overview of all the functions. You know what you can transfer, and you know what you don’t know. In the next part of this series, I’ll describe in greater detail what the actual actions of transfer look like.

 

Related Resources

Formula Reference

Formula Checklist – Excel

Formula Checklist – OneNote

Learning with Mr. Dang | Common Patterns

The post Learning with Mr. Dang | Transferring Knowledge from Excel (Part 1) appeared first on Microsoft Power Platform Blog.

]]>
Learning with Mr. Dang | Common Patterns http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/learning-with-mr-dang-common-patterns/ Tue, 26 Jun 2018 12:00:10 +0000 I am starting a blog series, which I've titled "Learning with Mr. Dang." In the beginning, I'll be walking through my methods for learning: what do I already know that I don't need to re-learn? What do I do when I don't know something? And as the name of this series suggests, over time, I will be writing about how I am exploring other capabilities in PowerApps so that you can learn at the same time as I am.

The post Learning with Mr. Dang | Common Patterns appeared first on Microsoft Power Platform Blog.

]]>
If you’ve been a visitor to the PowerApps Community Forum, you might recognize my pixelated face in an avatar. It’s the one beside solutions for how to write formulas, how to incorporate best practices, and how to simulate Pokemon Go mechanics in your own apps.

I’m Brian, but most people know me as Mr. Dang because I teach. Like members of our community, I enjoy solving problems. It’s why I chose PowerApps–I can use the platform to address problems around me from the mundane to the critical. So since 2016, I’ve authored solutions for motivating students, improving spelling practice, visualizing math, and more.

While I’m proud of my apps and what it’s done for my teaching, I’m most proud of my capacity for learning. I had taken my existing Excel skills and transformed it into an app-making skill–all while being an elementary school teacher. And what I’ve learned from meeting members of our community is that I’m not the only one who has gone through this journey! What all of us have in common is that we know “how to learn,” and it’s a skill I want to gift to you.

Learning with Mr. Dang

I am starting a blog series, which I’ve titled “Learning with Mr. Dang.” In the beginning, I’ll be walking through my methods for learning: what do I already know that I don’t need to re-learn? What do I do when I don’t know something? And as the name of this series suggests, over time, I will be writing about how I am exploring other capabilities in PowerApps so that you can learn at the same time as I am.

Not only will the content of these blogs apply to acquiring a skill like building PowerApps, but also learning a new skill in general. You can take these skills anywhere you go. My ultimate goal is for you to replicate my experience so you can learn on your own and enjoy learning. Enjoy this first bit on common patterns.

Common Patterns

Don’t reinvent the wheel. 

It’s a mantra that starting from scratch is not always the right decision. When a software designer is thinking about the UI that they want their users to experience, they look to existing examples. For instance, users are already familiar with accessing a file menu where they can save their progress or change settings. The hamburger or waffle icons may bring up a panel for site navigation. It’s expected that Ctrl+C should copy content and Ctrl+V should paste it. These consistent experiences across apps and websites are called “common patterns.”

Common patterns reduce the learning curve for a user. If you’re getting started with inserting controls in PowerApps, you do not need to read an article on the subject. You can use what you already know from using the ribbon in Microsoft Office products and the menu on any operating system: the insert menu is the place to go for inserting objects. By acknowledging the basics, you can allocate more of your time on learning crucial content.

The insert menu is a simple example about layout, but common patterns also apply to interactivity. If you want to resize any control in PowerApps, selecting one will reveal dots at the corners and the midpoints just as they appear for images and textboxes in Word. You can even hold Shift to maintain the aspect ratio as you resize, which is consistent with Office products and Photoshop. When UI patterns are familiar, it becomes second nature to practice your existing habits.

Common patterns exist between platforms, but also within. As you learn one experience, it can inform another experience. So once you’ve learned how to change the X and Y properties of one control, it works the same way for any other type of control. Patterns can also be found within a set of properties: changing the color property is the same for fill, border color, hover fill, disabled fill, etc. And, scaling up, if you understand how to use a condition to determine colors for one scenario, it’s the same logic elsewhere. By recognizing common patterns, you’ve achieved a broader scope of learning than the initial effort.

The most effective common patterns come to PowerApps from Excel. If you’re a user of spreadsheets, you’ll find that not only is the structure of the language familiar, but UI experiences like the ability to expand the formula bar carry over as well. In the next part of this blog series, I’ll describe how to transfer your knowledge of Excel to PowerApps.

Look for these common UI patterns to speed up your learning and spend your time where it is more impactful. As you identify them, you’re able to learn new products more easily; the memory sticks because it’s connected to previous learning. Below are some other areas where such patterns exist:

  • commonly used icons activate the same action
  • side panels reveal more options
  • formatting of color, fill, font, size, etc. are always placed together

It is interesting to note that patterns do change over time. For instance, not only is the floppy disk icon phasing out because floppy disks are no longer in fashion, but autosaving capabilties have replaced the need to manually save. And if you grew up with the internet in the 90s, you may be pleased to see some patterns evolve. 🙂

Once you have a better idea of how common patterns appear in PowerApps, it’s time for you to apply them into your own apps–you’re an app maker, after all. What experiences do you want to carry over from your favorite apps?

 

Related content

Microsoft Fabric

Common Patterns in PowerApps

PowerApps Learning Resources

The post Learning with Mr. Dang | Common Patterns appeared first on Microsoft Power Platform Blog.

]]>
Return an Array from Flow to PowerApps (Response Method) http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/return-an-array-from-flow-to-powerapps-response-method/ Fri, 04 May 2018 15:10:05 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/return-an-array-from-flow-to-powerapps-response-method/ This blog post is a second part in a series on how to "Return an array from Flow to PowerApps." It will cover a much more efficient solution: the "Request - Response" method. Inside flow, using the action of the same name, you will be able to return arrays of any shape and size to PowerApps. To make the most use of this capability, we will be applying the solution to executing a SQL query.

The post Return an Array from Flow to PowerApps (Response Method) appeared first on Microsoft Power Platform Blog.

]]>
Update 2018-06-06: Please not that in the step involving reviewing the schema for the Response step, be sure to check that each column’s type is specified as string, integer, boolean, etc. or the flow will not register in PowerApps.

 

In a previous blog post that detailed how to use the “Respond to PowerApps” action, there were limitations on the viability of what will be referred to as the “Split method.” It was necessary to re-validate the type of data each column retrieved, and you needed to rename columns in the process. The solution worked and required less technical knowledge since you could copy paste the formula generated from a spreadsheet tool, but it did not scale well.

This blog post is a second part in a series on how to “Return an array from Flow to PowerApps.” It will cover a much more efficient solution: the “Request – Response” method. Inside flow, using the action of the same name, you will be able to return arrays of any shape and size to PowerApps. To make the most use of this capability, we will be applying the solution to executing a SQL query.

The Big Idea

Knowing how to return an array to PowerApps will make many more connectors useful to you. The existing “Execute a SQL query” action in Flow is now capable of sending its resulting array back into the app where it was triggered. This allows you to leverage the SQL language from within your apps and retrieve thousands upon thousands of records. To put this into perspective: you can type a query to filter objects in a gallery or dropdown menu in addition to the current capabilities in PowerApps. 

 

The flow consists of these steps:

  1. Trigger the flow from an action in PowerApps.
  2. Capture the query statement from what a user had typed into a text box in the PowerApp.
  3. Execute the SQL query.
  4. Detect a 200 response for success, and send that data back into PowerApps.

Compared to the Split() method, this method requires much less work to do when authoring your app. All that is left is to insert a button to call the flow and set its contents to a variable or collection. You will not need to add any columns or split any text since the raw data is returned as a array.

You can follow along with the video below, or read the contents of this blog.  

Creating the Flow: Basics

The first three actions of this flow will be typical and familiar, so they won’t need an in-depth explanation. The fourth action will be newer to users, so it has a thorough explanation on why you’re doing what you’re doing, but at its core it’s just a few steps.

1. We will be creating this flow from blank. As a best practice when creating a flow, start by adding the steps for the trigger and the final action.

  • PowerApps trigger
  • Request – Response

The remaining steps will fit in between. We will configure the Response step later.

2. Insert a new action between the PowerApps trigger and response. Search for “Initialize variable.”

  • Name it “sqlquery”
  • Change its type to “String”
  • In the field for Value, use the dynamic content box to choose “Ask in PowerApps”

This step is simply a best practice that declares the query statement that is received from PowerApps into a variable.

3. Insert a new action after the variable. Search for “SQL Query – Execute a SQL query.” In the field for query, type in the name of your variable: sqlquery You can leave the formalParameters blank. This step will run the query that the user had typed into a text input box before triggering the flow.

Creating the Flow: Response

4. The last step is designed to send the array that results from the query back into PowerApps. But at the moment, if the array were to be hypothetically sent back, it would be unclear what kind of data is returning.

Remember in the Split() method, we needed to re-validate and rename the columns. What we will do in this step is use some sample data to answer these questions so that Flow can communicate clearly with PowerApps:

  • What type of data is in each column?
  • What are the names of those columns?
  • Which columns are required?

Before we proceed, name your flow GetSQLQuery, or another name of your choice, and save it. Only then can we test the flow using the “Test” button to get some sample data.

A panel called “Test Flow” will slide out from the right. Select “I’ll perform the trigger action.”

A dialog will appear asking you to confirm the connection to SQL.

Since we’re running this test ad hoc and not in PowerApps where this flow will actually be triggered, we will need to supply the flow with a SQL statement like we would use for a real run. Type in a statement that would receive a couple of records.

The purpose of this test is to get two or more records from the table that can be a representative sample of data. If Flow sees that a column consistently receives text records, it will identify that column as containing text. Your sample size needs to be big enough so that if a column receives null values, there are enough records that provide the actual type of data when the column is not null.

If the flow is successful, you will see this dialog:

Click “Done” to see exactly how the flow performed. Expand the section for “Execute a SQL query.”

Let’s take a moment to understand what came out. The indentation and bracketing of the output gives us an understanding of the organization of the data in JSON. The first level of indenting includes two objects:

[“OutputParameters”,”ResultSets”]

Beside OutputParameters, you may notice that there are curly brackets that have nothing in between, so it’s empty. ResultSets is not empty, however, since it contains the next level of indentation: Table1. Following Table1 is the tabular data that we expect to see. We need to understand this structure to configure the last step.

For now, we will copy the data from Table1. This begins with the square bracket [ and ends with its corresponding square bracket ]. Be sure not to include the curly brackets at the end since they are there for ending the parent data. We will paste this later.

Click edit in the top right corner so that we can finish our flow. Expand the Response step.

In the field for Body, you might be able to use the dynamic content box to choose ResultSets.Table1 so that the response receives the result of the SQL query. If it does not appear, we can use the expression box to manually enter it. Click the Expression tab and in the fx bar, type:

body('Execute_a_SQL_query').ResultSets.Table1

This means, “Return the body of the ‘Execute a SQL query’* step. Drill down into ResultSets and then into Table1, which is the part you really want.”

*Note that depending on if you had changed the name of your SQL step, the name you type here may look different. Simply type the name of your step and replace spaces with underscores, i.e. ‘Execute_a_SQL_query_2’.

Users of Postman will understand this last step more readily. At the bottom of the Response step, click the label for “Use sample payload to generate schema.” Paste in the data you copied earlier, then click Done.

For our purposes, this simply means, “Use the sample data we just copied to generate a kind of structure or skeleton for the names of columns and the data types to expect in each column.”

The Response Body JSON Schema field will no longer be empty at this point. Scroll through and check if each column was correctly named and validated. If a column’s type is not specified as a string, integer, or boolean value, the flow will not register when connecting it to PowerApps.

Save the flow again and we’re ready to incorporate it into an app!

Creating the PowerApp

The app we are making simply consists of a Button, TextInput box, and a Gallery; insert each one.

  • Configure the Button’s OnSelect property to run the flow.

Action > Flows > Select the flow from the right-hand panel that pops out

  • Between the quotation marks, reference the Text of your TextInput control:

GetSQLQuery.Run(TextInput1.Text)

  • Revise the OnSelect property further to collect the result of that flow to a collection:

ClearCollect(queryResults,GetSQLQuery.Run(TextInput1.Text))

  • Then set the Gallery’s Items property to the name of your collection: queryResults
  • Rework the Labels inside the gallery to the desired columns.

The app is ready–simply type in a valid SQL statement, hit your button, and see results appear in the gallery.

Next Steps

Having the SQL language inside of PowerApps will enable you to shape your data in complex ways–and you can still use the Excel language around it to Filter, Sort, and Search. What kinds of Select statements will you write? How many thousands of records will you retrieve and visualize in your apps?

Whatever you choose to do in your apps, having more languages available will help you achieve them. 

Related Resources

Use Flow in PowerApps to Upload Files or Return Data Tables

Return data to PowerApps from a flow, build lists in a flow, and test a flow with previous run data

The post Return an Array from Flow to PowerApps (Response Method) appeared first on Microsoft Power Platform Blog.

]]>
Return an array from a SQL Stored Procedure to PowerApps (Split Method) http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method/ Wed, 02 May 2018 10:00:18 +0000 http://approjects.co.za/?big=en-us/power-platform/blog/power-apps/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method/ Now that you can return data from Microsoft Flow to PowerApps, how can you return a full array?

The post Return an array from a SQL Stored Procedure to PowerApps (Split Method) appeared first on Microsoft Power Platform Blog.

]]>
Author’s note: this blog has been updated with a link to the Request – Response method.

Users who want to execute a SQL stored procedure in Flow can now send its resulting array into PowerApps. The Flow team released this new feature called “Respond to PowerApps” that now makes it easier to retrieve data than creating a custom connector. A flow that is triggered in PowerApps can return that data into the same instance of the app. This enables scenarios in which thousands of records can be called for viewing, editing, and shaping. You can read more about it here.

Presently, the data that is returned can take the form of a text string, file, or email address. Directly returning an array is not among that list, but it can still be done with a workaround you’ll learn about from reading further.

The Big Idea

There are many other methods of returning an array to PowerApps. You could call an Azure function or an Azure Logic App through a custom connector, but those are at a high level. The method you will read about in this blog uses the Split() formula in PowerApps to parse a text string back into an array. Intermediate to advanced users may want to explore the “Request – Response” action, which will be featured in a subsequent blog. You can now read an in-depth blog about Request – Response.

We will be using a SQL stored procedure for our array, but you could easily substitute any other action step that produces an array into the flow. This solution makes it possible for you to revise your stored procedure query without needing to reopen and resave your app or flow.

The flow would include the following steps:

  1. Trigger the flow by clicking a button in PowerApps.
  2. Execute the SQL stored procedure.
  3. Select the desired columns for parsing later.
  4. Join the array into a single text string with a strategic delimiter.
  5. Respond to PowerApps with the text string.

Once PowerApps receives the text string, all that remains is to parse the string back into an array using the Split() function and AddColumns().

You can follow along in this blog or watch this video:

Getting Started

The scenario described in this tutorial will operate on a SQL stored procedure for a narrow use case of retrieving records of data, but you are more than welcome to substitute any action that produces an array within Flow so that you can follow along: a SharePoint list, a list of documents in OneDrive, tags from Computer Vision API, etc. If you have not already done so:

You may also want to preemptively decide which columns you would like to return into PowerApps if your stored procedure does not already do so.

This project will involve copy-pasting a formula that will be generated for you. Please download the file below to have it ready:

Formula generator app

Creating the Flow

You can begin by clicking “+Create from blank” button on the screen for My Flows.

1. “Trigger the flow by clicking a button in PowerApps.” As a best practice, for situations where you would want to return data from Flow to PowerApps, you may want to make it a habit to start the setup your flow with both the trigger and response for PowerApps. Think of it like the bread of a sandwich–all of the other steps are the ingredients in between. We will configure the response step later.

From there, you would need to hover in between the steps and click the + button to create your next steps.

Your two steps from PowerApps should look like this:

2. “Execute the SQL stored procedure”

Insert a step in between the two steps for PowerApps. Search for “stored procedure” and select the option for “SQL Server – Execute stored procedure.”

From the dropdown menu for Procedure name, select the name of your stored procedure. Although you are not able to edit the query of the stored procedure from within Flow, you may still do so from SMSS or your SQL manager of choice without needing to redo this flow.

3. “Select the desired columns for parsing later.”

By this step, Flow will have the data from the stored procedure in an array formatted in JSON. The purpose of this step is to limit the columns returned to those that are not complex to work within the limits of the formula generating app.

Insert a step and search for “Data Operations – Select.”

Click into the From field and use the dynamic content box to choose the results of the “Execute stored procedure” step.

There are two columns in the section for Map (‘map’ as in how do you want to map your columns): “Enter key” on the left and “Enter value” on the right.

Click into each row in the “Enter value” column and use the dynamic content box to choose the columns you want from your stored procedure.

In the corresponding “Enter key” column, type in a column name for each column.

4. “Join the array into a single text string with a strategic delimiter.”

The Select step has reduced the stored procedure to a few select columns, but the data is still a table. In order to turn the table into a text string to be returned to PowerApps, we need to join each row and its column data side by side.

The Join step will concatenate the full contents of each row side by side in a long text string. Each row in that text string is separated by a text delimiter. The image below uses “n” as its delimiter to distinguish each row, but you should use something more unique that will not conflict with the data you have.

We need a unique and easily identifiable delimiter since we will search for it and remove it to recreate our array when we get into PowerApps.

In the From field, use the dynamic content panel to choose the Output from the Select step. In the “Join with” field, type in a delimiter you would like to use to separate each row.

5. “Respond to PowerApps with the text string.”

Now that all the steps in between are ready, it’s time to configure the “Respond to PowerApps” step that we had started with.

Click the “+ Add an output” button and select Text. In the left field type in a name for this text string that you want to use to recall it in PowerApps. In the right field use the dynamic content panel to choose the Output from the Join step.

Give your flow a name and save it. Our flow is ready to use!

 

Parsing the Array in PowerApps

Open an existing app or create a blank one to test out your flow.

As mentioned before, you can download an app for generating a formula that can split the text string from Flow back into an array.

  • Open another instance of the Power Apps Studio.
  • Click File, then Open.
  • Browse for the msapp file that you downloaded.

When the app opens, fill out the text boxes with details for your app:

  • Name of your flow: include single quotes if your flow’s name would require them.
  • Name of text field returned from flow: the name of the field you chose in the last step of your flow.
  • Name of variable for flow response: the name of a variable that will be receiving the string from the flow.
  • Name of collection for records: the name of the collection that will be the array you use throughout the app
  • Delimiter from join: the delimiter you chose for the Join step in your flow.

Click ‘+ New column’ to add the column names in your app. Use the drop down menu beside each column to determine its type. This tool is limited to only strings, numbers, and Boolean values.

A formula will be generated in the box below. Copy this formula to a button or other control in your app that will be getting data.

The formula contains some comments, but how do you make sense of this formula?

  • The Set() formula defines a variable to take the text string that was returned from Flow.
  • The Split() part of the formula takes the text in that variable and separates a new row each time it recognizes the delimiter “n”.
  • A helper column is added that parses each resulting row into a column name (key) and its contents (value). These are known as key-value pairs.
  • The columns you defined look up their values from the helper column.
  • Depending on the type of data for a given column, the formula adapts to validate numbers with the Value() function, or set it equal to “true” to get a Boolean value.
  • The resulting array with new column names and validated data is put into a collection.

Next Steps

From there, you can perform all the usual actions for collections: Filter(), LookUp(), Sum(), etc. against your collection. As you can be returning tens of thousands of records that you could not do before–within a matter of seconds–the capability of passing data from Flow to PowerApps is one that enables use cases that rely on large data sets and aggregate functions.

In the next blog post in this series, you will learn about how to use the “Request – Response” method to return an array from Flow into PowerApps, the standard approach.

Related Resources

Related ideas on where to apply this capability:

Performance considerations with PowerApps
Delegation overview

Hyperlinks used in this blog:

SQL Connector
Video tutorial
App for making your Split() formula

 

The post Return an array from a SQL Stored Procedure to PowerApps (Split Method) appeared first on Microsoft Power Platform Blog.

]]>