Leveraging AI and Copilot in Microsoft’s Power Platform: Automating Workflows, Building Apps

Leveraging AI and Copilot in Microsoft’s Power Platform: Automating Workflows, Building Apps

This article is contributed. See the original author and article here.










 














In today’s blog post, we dive into the exciting fusion of AI large language models with Microsoft’s Power Platform.

With over 33 million Monthly active users of Power Platform announced at Build 2023. We explore how this powerful combination can help build automation workflows, apps, webpages, and bots without requiring extensive coding knowledge. With the introduction of AI-assisted workflow generation in Power Automate, Copilot integration with Power Apps, Power Pages for website generation, and enhanced chat experiences with Power Virtual Agents, the Power Platform is revolutionizing low-code development.


 

 

Sharing 33 million monthly active users of PowerPlatform, Charles Lamanna, MSBuild 2023 sessionSharing 33 million monthly active users of PowerPlatform, Charles Lamanna, MSBuild 2023 session


 

Saving Time and Effort with AI and Copilot
The AI and Copilot experiences across the Power Platform offer numerous benefits, including time and effort savings for users. Whether you have an idea for automating a process or creating an app or website, AI can bring your vision to life more efficiently than ever before. By leveraging AI’s knowledge and the data you provide, the platform can generate customized experiences and suggest improvements to enhance your workflows and applications.


AI-Driven Automation of Invoice Processing
To showcase the capabilities of Copilot and AI, we explore a common scenario: invoice processing. Traditionally, this involves manual data entry, approval workflows, and Excel spreadsheet management. With Copilot, users can build and automate basic workflows using natural language prompts, eliminating the need for extensive coding expertise. Copilot generates a preview flow within seconds based on the provided prompt, and users can customize the flow further or generate additional variants effortlessly. This automation extends to scoping the flow to invoice attachments, specifying approval steps, and updating Excel files automatically.


Harnessing AI Builder for Document Analysis
AI Builder, a powerful tool within the Power Platform, offers forms processing capabilities for extracting data from documents like invoices. By integrating AI Builder with Copilot, users can extract approval justifications and automatically generate comprehensive emails. The extracted invoice details can be presented within the email, enabling seamless approval within Outlook. Additionally, the AI-generated flow can enter the approved invoice data into Excel, further streamlining the process.



Accelerating App Development with Copilot
Copilot’s integration with Power Apps expedites app development processes. Users can import Excel files directly into Power Apps Studio, where Copilot processes the data and transfers it to a Dataverse environment. This enables scalable and centralized management of invoice data. Copilot automatically determines column headings and data types, simplifying the app creation process. The resulting app is fully functional, allowing users to browse, search, create new records, and customize the app effortlessly.


Building Professional Websites with Power Pages and Copilot
Power Pages, coupled with Copilot, provides an efficient way to build professional websites. By using Copilot prompts, users can generate HTML, CSS, and contextually relevant images for website sections. Copilot’s assistance extends to content generation, including descriptive paragraphs and forms. The large language model’s ability to generate both code and text-based content streamlines the website development process significantly.


Enhancing Chat Experiences with Power Virtual Agents and AI
The integration of Power Virtual Agents and Copilot empowers websites with intelligent chatbot capabilities. Power Virtual Agents can address user inquiries and provide generative answers powered by OpenAI’s GPT. The bot is automatically configured to search across the website and summarize relevant knowledge-based articles. Additionally, the chatbot supports multi-turn conversations and context-based responses. Future enhancements will include document uploads, tone selection for responses, and content moderation controls.

 


Overview of Demos in the Video

Exploring AI and Copilot Experiences in the Power Platform
Stephen Siciliano, guides us through the latest Power Platform updates. The AI and Copilot experiences in the Power Platform offer assistance across various tasks, saving time and effort for users. Whether automating processes, building apps, or creating websites, the AI can generate experiences based on knowledge and data provided, offering suggestions for customization and helping with logic and workflow generation.


Building Automated Workflows with Copilot
Stephen demonstrates how Copilot can transform a common scenario like invoice processing. Using a natural language prompt, Copilot quickly generates a workflow for managing invoice intake and approval. Users can iterate on the flow, ask for additional variants, and customize it as needed. Copilot’s ability to automate repetitive processes and generate functional experiences simplifies the automation of complex workflows.


Utilizing AI Builder for Document Analysis
Stephen showcases how AI Builder, integrated with Copilot, can extract data from incoming invoices. The AI model can process the invoice content, extract relevant information, and generate comprehensive email notifications. This streamlines the approval process and eliminates the need for manual data entry.



Accelerating App Development with Copilot
Copilot’s capabilities extend to app development in Power Apps. Stephen demonstrates how Copilot assists in creating apps based on existing Excel files. By uploading the file to Power Apps Studio, Copilot processes the data, determines column headings and data types, and generates a working app. The AI also assists in customizing the app, making changes based on prompts provided by the user.


Creating Websites with Power Pages and Copilot
Stephen shows how Copilot can be used in conjunction with Power Pages to build professional websites quickly. By providing prompts, Copilot generates HTML, CSS, and relevant images for different sections of the webpage. This accelerates the website creation process, allowing users to focus on content customization.



Enhancing User Experiences with Power Virtual Agents
Power Virtual Agents integration with Power Pages enables the addition of intelligent chatbots to websites. Stephen demonstrates how a bot can be easily added to a website using Power Virtual Agents. The chatbot, powered by OpenAI’s GPT, can provide generative answers to user questions, search the website for relevant information, and engage in multi-turn conversations. The integration ensures that site visitors can find the information they need quickly and effortlessly.


Conclusion
The fusion of AI and Copilot with Microsoft’s Power Platform opens up new possibilities for automation, app development, and user experiences. With AI-assisted workflow generation, app building, webpage creation, and chatbot integration, users can achieve their goals more efficiently, even without extensive coding knowledge. The Power Platform’s latest updates empower users to leverage AI technologies, making the development process faster, more intuitive, and highly productive.


 


Learning Resources 
Bring AI to your business with AI Builder – Training | Microsoft Learn


Improve business performance with AI Builder – Training | Microsoft Learn
Create bots with Power Virtual Agents – Training | Microsoft Learn
Get started with Power Pages – Training | Microsoft Learn






Acceleration of Data-Driven App Development with Copilot

Acceleration of Data-Driven App Development with Copilot

This article is contributed. See the original author and article here.

Blog BannerBlog Banner
At Microsoft Build, 50 updates were announced and among those updates were Power Platform announcements in which we will look at one of them today. Learn how to use the Excel to App with Copilot feature which enables you to take advantage of Copilot to add data processing capabilities by helping you clean and prepare your data before you even start building the app. Copilot can now ingest any Excel file, no matter how loosely structured and create robust structured tables with a variety of data types.


 


Find out more about Microsoft Build announcements on the Microsoft Build 2023 Book of News 
Earn a free certification voucher by completing at least one Cloud Skills Challenge from the Microsoft Build Cloud Skills Challenge


 


Excel to App


Students, rising developers and pro-developers can rapidly build solutions in PowerApps by simply dragging and dropping or linking to a data source like Excel, and then build the UI on top of that data.


 


Things to consider



  • You can import your excel file as it is and PowerApps will create a Custom Dataverse Table and a Canvas App for you.

  • You do not need to format your table within excel (example you do not have to use Format as a Table within your spreadsheet)

  • Your Canvas App and Dataverse table will be built based on the first sheet of your Excel Spreadsheet.

  • The excel file needs to be closed when importing within PowerApps


 


Short Demo


Animation showing a short demo of the Excel to App feature with Copilot in PowerAppsAnimation showing a short demo of the Excel to App feature with Copilot in PowerApps


Practical steps to follow



  1. Prepare your excel file to use or create a new one.

  2. Go to PowerApps and Sign in with your account.

  3. On the homepage, click on Start with data
    Someleze_Diko_1-1684963553463.png

  4. On the Start with data wizard, choose and click on Upload an Excel file.
    Someleze_Diko_2-1684963640186.png

  5. Click on Select from device button then choose your excel file your device.
    Someleze_Diko_1-1684963977578.png

     


     



  6. You will get a preview of your Dataverse custom table that will be created for you. You will be able to edit the table by clicking on Edit Table Properties to change the Table name.
    Someleze_Diko_2-1684964101015.png

     



  7. The columns of your table are assigned to their appropriate data types and you have the ability to change/edit the column by clicking on the drop down next to the column and click on Edit Column. Once done, you can click on Create app
    Someleze_Diko_3-1684964182851.png

  8. Once you have clicked on Create app, Copilot will build a Canvas App with a Standard template that you can modify based on your needs.
    Someleze_Diko_4-1684964353771.png

     




Let’s Add more AI capabilities with Copilot



  1. Within your app, click on Settings then choose Upcoming Features
    Someleze_Diko_0-1684965708625.png

     



  2. Search for Copilot and toggle it to enable it. Once enabled close the dialog box.
    Someleze_Diko_1-1684965803470.png

     



  3. Once your Copilot Component is enabled, click on Insert and choose Copilot (preview)
    Someleze_Diko_2-1684965968308.png

     



  4. Once the Copilot Component is added on the screen, you will need to choose/select the your Datasource.
    Someleze_Diko_3-1684966201733.png

     



  5. Once you have chosen your Datasource, the full Copilot Component is added to your app. This allows your app users to use Copilot to understand and analyze their data using suggested prompts.
    Someleze_Diko_4-1684966525389.png

     



  6. Play the app and see Copilot in action. Choose one of the suggested prompts, for example on the picture below I want to know how many tickets are open.
    Someleze_Diko_5-1684966768167.png

     




Congratulations! You did it, you built a Canvas app from your excel file using Copilot!


Someleze_Diko_0-1684964847197.gif


 

How to perform a REST API request in Azure using RBAC authentication with Postman

This article is contributed. See the original author and article here.

This article describes how to perform a REST API request in Azure using RBAC authentication with Postman. I will use as example the Get Blob (REST API) request.


 


Please see below how to perform a REST API request in Azure using RBAC authentication:



  1. Open the Azure Portal and go to Azure Active Directory.

  2. On left side, please create a new App registration by clicking on App registration (left side bar) and then New registration. Fill in the Name and all the information required.

  3. Inside the new app:

    1. Click on Overview and and collect the Application (client) ID value, and the Directory (tenant) ID value.

    2. Clink on Certificates & secrets and create a New Client Secret. Please collect the client secret value.



  4. Open your storage account and go to Access Control (IAM) and assign to this App the RBAC role required to call any data access operation in Azure Storage. Please note the role assignment could take some time to take effect.

    1. For the example presented here (Get Blob request), we need to assign to the app need the following permission “Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read“. The Storage Blob Data Reader RBAC role is the least privileged built-in role with this permission. This information can be found here: Get Blob (REST API) – Azure Storage



  5. Open Postman and:

    1. Create a new request.

    2. Select the Authorization tab in the request builder window and:

      1. In the “Type” dropdown, select “OAuth 2.0”

      2. On the right side, please fill in the following fields:

        1. Token Name: A name of your choosing

        2. Grant Type: Client Credentials

        3. Access Token URL: https://login.microsoftonline.com//oauth2/v2.0/token where is the Directory (tenant) ID value collected on step 3.1 above.

        4. Client ID: The Application (client) ID value collected on step 3.1 above.

        5. Client Secret: The client secret value collected on step 3.2 above.

        6. Scope: For storage, use https://storage.azure.com/.default

        7. Client Authentication: Send as Basic Auth Header.



      3. Click in “Get New Access Token” and collect the Access Token.





  6. To be able to execute the get blob request, we need to select the Headers tab in the request builder window and:


    1. Select the GET method request.

    2. Add the GET method request URI (https://myaccount.blob.core.windows.net/mycontainer/myblob)

    3. Add the header “Authorization with the value “Bearer <token>” where <token> is the value generated on the step 5.2.7 above.

    4. Add at least the two required headers x-ms-date and x-ms-version.

    5. Execute the request.




 


Disclaimer:



  • These steps are provided for the purpose of illustration only. 

  • These steps and any related information are provided “as is” without warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

  • We grant You a nonexclusive, royalty-free right to use and modify the Steps and to reproduce and distribute the steps, provided that. You agree:


    • to not use Our name, logo, or trademarks to market Your software product in which the steps are embedded;

    • to include a valid copyright notice on Your software product in which the steps are embedded; and

    • to indemnify, hold harmless, and defend Us and Our suppliers from and against any claims or lawsuits, including attorneys’ fees, that arise or result from the use or distribution of steps.



Lesson Learned #356: Transaction log full in Azure SQL due to CDC job.

This article is contributed. See the original author and article here.

Today, we faced a service request where our customer got the following issue Msg 9002, Level 17, State 2, Line 8
The transaction log for database ‘2d7c3f5a-XXXX-XZY-ZZZ-XXX’ is full due to ‘REPLICATION’ and the holdup lsn is (194XXX:24X:1). Following I would like to share with you what was the lesson learned here.


 


We need to pay attention about the phrase “is full due to”, in this case is REPLICATION that means that could be related about Transaction Replication or Change Data Capture (CDC). 


 


In order to determine the situation, if we are not using Transaction Replication is to review if CDC is enabled running the following query: select name,recovery_model,log_reuse_wait,log_reuse_wait_desc,is_cdc_enabled,* from sys.databases where database_id=db_id() – sys.databases (Transact-SQL) – SQL Server | Microsoft Learn


 


If the value of the column is_cdc_enabled is 1 and you are not using CDC, use the command sys.sp_cdc_disable_db to disable the CDC job. sys.sp_cdc_disable_db (Transact-SQL) – SQL Server | Microsoft Learn


 


During the troubleshooting process during the execution of sys.sp_cdc_disable_db we got another error Msg 22831, Level 16, State 1, Procedure sys.sp_cdc_disable_db_internal, Line 338 [Batch Start Line 6]
Could not update the metadata that indicates database XYZ is not enabled for Change Data Capture. The failure occurred when executing the command ‘(null)’. The error returned was 9002: ‘The transaction log for database ‘xxx-XXX-43bffef44d0c’ is full due to ‘REPLICATION’ and the holdup lsn is (51XYZ:219:1).’. Use the action and error to determine the cause of the failure and resubmit the request. 


 


In this situation, we need to add more space to the transaction log file due there is not possible to register the disabling CDC operation in the transaction log. 


 


Once, we have more space in our transaction log, we were able to disable CDC and after disabling CDC, Azure SQL Database was able to marked as backup the Transaction Log.


 


Finally, in order to try to speed up the truncation of this transaction log we executed several times the command DBCC SHRINKFILE (Transact-SQL) – SQL Server | Microsoft Learn  and we were able to reduce the file size of the transaction log file. 


 


Also, during the troubleshooting we used the following to see how many VLFs that we have and the space usage: sys.dm_db_log_info (Transact-SQL) – SQL Server | Microsoft Learn and sys.database_recovery_status (Transact-SQL) – SQL Server | Microsoft Learn


 

SELECT * FROM sys.dm_db_log_info(db_id()) AS l
select * from sys.database_recovery_status where database_id=db_id()

 


 

Improve Labelling processes with new enhanced capabilities

Improve Labelling processes with new enhanced capabilities

This article is contributed. See the original author and article here.

Introduction

Effective labelling processes and configuration play a crucial role in optimizing warehouse operations. There are several reasons why accurate labelling and configuration are important.

Firstly, proper labelling and configuration enhance efficiency in a warehouse. When items are labelled and organized accurately, warehouse staff can quickly locate and identify products, reducing the time spent searching for items and ultimately boosting productivity.

Furthermore, clear and accurate labelling also reduces the likelihood of picking or shipping errors, which can lead to improved customer satisfaction and decreased costs associated with returns and corrections.

Lastly, proper labelling and configuration contribute to safety and compliance in a warehouse. By adhering to regulations and ensuring that hazardous materials or items with specific storage requirements are handled and stored correctly, the risk of accidents can be reduced.

As technology continues to advance, so do the tools available to improve labelling and configuration processes in warehouses. In Wave 1 2023, Microsoft Dynamics 365 SCM released several enhancements to support more advanced scenarios and bring extra capabilities to the labelling process.

License plate label layout

In 10.0.31 Microsoft Dynamics 365 SCM, a new License plate label layout was introduced for designing license plate labels. This feature lets you build more advanced license plate label layouts. Now LP layouts can have repeating structures and include header, body, and footer elements (for example, if you want to print item labels out of receiving or shipping work (similar to how wave labels currently work)). You can set up custom data sources with joined tables to print information from the related tables and define custom date, time, and number formats. This capability provides more flexibility in designing labels and removes some of the customization work needed to add data to the labels.

Custom label layouts

In 10.0.33 Microsoft Dynamics 365 SCM a new Custom label layout feature was released. 

This feature introduces a new Custom label layout type that allows you to build layouts from any data sources. A new Print button will be displayed automatically when layout exists for corresponding source. Users can print labels for any data including but not limited to Product labels, Location labels, Customer labels and many more.

It gives you the tool you need to create your own labels based on the business requirements. As well as configuring and printing any labels from any source.

Print labels using an external service

In 10.0.34 Microsoft Dynamics 365 SCM provides a quick and simple method for linking Dynamics 365 to many of the most popular enterprise labeling platforms. With Microsoft Dynamics 365 SCM’s seamless integration and flexible configuration options make for a pain-free, rapid implementation. It allows you to create a seamless flow of communication and transactions to optimize your printing workflow.

It allow you to configure the HTTP(S) request that you make, allowing for the integration with cloud native and on-premise (if the firewall is opened or an Azure API created) label printing services, including Zebra’s cloud printing service (https://developer.zebra.com/apis/sendfiletoprinter-model), Loftware NiceLabel Cloud or Seagull Scientific BarTender configured with REST APIs.

Conclusion

In conclusion, the continued evolution of technology is providing ever more sophisticated tools for improving labelling processes and configuration in warehouses. The enhancements released in Wave 1 2023 are just the latest example of how Microsoft Dynamics 365 SCM is staying at the forefront of this evolution and providing users with the tools they need to optimize their warehouse operations.


Would you like to learn more?

Print labels using an external service – Supply Chain
Management | Dynamics 365 | Microsoft Learn

Print labels using the Loftware NiceLabel label service
solution – Supply Chain Management | Dynamics 365 | Microsoft Learn

Print labels using the Seagull Scientific BarTender® label
service solution – Supply Chain Management | Dynamics 365 | Microsoft Learn

License plate label layouts and printing – Supply Chain Management | Dynamics 365 | Microsoft Learn

Custom label layouts and printing – Supply Chain Management | Dynamics 365 | Microsoft Learn

Print labels using an external service – Supply Chain Management | Dynamics 365 | Microsoft Learn

Not yet a Supply Chain Management customer? 

Take a guided tour.

The post Improve Labelling processes with new enhanced capabilities appeared first on Microsoft Dynamics 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.