Tuesday, November 10, 2020

AI Builder Form Processing: Multi-layout Form Processing

AI Builder Form Processing Multi-layout Form Processing has been one of the most requested features and is now available in preview for you to test. This feature allows you to process forms with a variety of different layouts (but similar in content) with a single model, which brings this feature one step closer to a scalable enterprise solution.



In this video I cover the following:

- Creating a model
- Form collections
- Training the form processing model
- Publishing the form processing model
- Testing the model

For additional information, please refer to:

Create a form processing model - click here
AI Builder form processing announcement - click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Tuesday, October 20, 2020

Power Platform: Application Lifecycle Management (Part 3/3) - Build and Release Pipelines

Welcome to the final episode of Power Platform Application Lifecycle Management. In parts 1 and 2 you saw how to prepare your environments, set up an Azure DevOps project, and define Service Connections to your Power Platform environments. 

In this, the final installment of this 3-part series, you will learn how to create the Build and Release pipelines using the Power Platform Build Tools to take your Power Platform solution from an environment, through source code control, through staging and production deployments.



Topics covered:

- Power Platform source code control with Azure Repos
- Build and Release pipelines
- Sharing your solution

References:

Power Platform Build Tools webinar - https://youtu.be/Qwue8fwetJA 
Solutions Overview and Limitations - click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Tuesday, September 22, 2020

Power Platform: Application Lifecycle Management (Part 2/3) - Solutions and DevOps

In the previous installment, you saw how to work through a set of prerequisites to get you going in your Power Platform Application Lifecycle Management journey. In this video, I will work through building an app and adding it to a solution and show you some additional Azure DevOps configuration options to link your repository to your Power Platform development environment.



Topics Covered:

1. Building app based on template
2. Adding your app to a solution
3. Linking your DevOps project to your Power Platform environment

References:
Power Platform Build Tools webinar - https://youtu.be/Qwue8fwetJA 
Solutions Overview and Limitations - click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Monday, September 14, 2020

Power Platform: Application Lifecycle Management (Part 1/3) - Prerequisites

This series is in response to multiple requests by my viewers to address the topic of Power Apps Application Lifecycle Management (ALM). This series is intended to breakdown the entire process in as much detail as possible, without lengthy explanations on how to get it done or, as often happens, little to no explanations on how you arrived at a particular step or result.

My first installment will focus on Prerequisites, this is, what you need to have in place to get started. I will walk you through provisioning your Power Platform Dev, QA, and Production environments, along with installing the Power Platform Build Tools and setting up your Azure DevOps project. I also explain the concept of solutions in Power Platform and why they are important to your ALM strategy.



Topics covered:

1. Creating Power Platform Environments
2. Azure DevOps and Installing Power Platform Build Tools
3. Creating an Azure DevOps Project
4. Solutions

References:
Power Platform Build Tools webinar - https://youtu.be/Qwue8fwetJA

Credits:
Summer - Bensound - Royalty free music at https://www.bensound.com

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Thursday, September 3, 2020

Power Automate: Transfer records from SharePoint list to Azure SQL database

Majority of times, when we are working with various data sources, we want information to go from one source to another, conditioned to the occurrence of an event. Today, I will show you how to transfer records from a SharePoint list to Azure SQL database tables in response to a timesheet approval event. In the process, you will learn how I leveraged the existing Power Apps Expense template app and converted it into a Timesheet app for the purpose of recording time for various activities 



Other topics covered:

  • Working with SharePoint lists and Azure SQL databases
  • "When an item is created or modified" SharePoint connector trigger
  • "Delete Item" SharePoint connector action
  • "Get Items" SharePoint connector action
  • Conditional actions
  • Get Rows and Insert Row SQL connector actions
  • Apply to each action
  • substring(), formatDateTime()

Please leave your comments below and let me know what you think. Also, please feel free to suggest topics you would like me to cover. 

References: Reza Dorrani - Expense Tracking Sample Power App with Receipt Scanning AI - Click here

Credits: Creative Minds - Bensound - Royalty free music at https://www.bensound.com

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Monday, August 10, 2020

Power Apps: Save Mixed Reality pictures to SharePoint

In this video you will learn how to save pictures taken in Power Apps Mixed Reality or Augmented Reality viewer to a SharePoint document library.

   

Some topics covered include: Power Apps ForAll(), With(), Mid(), and Len() functions, the Self operator. Learn to use the Power Automate SharePoint connector and the Create File action, and the base64toBinary() function in an expression. Finally, you will see how you can call a flow from Power Apps to make it all work like a single application.

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Tuesday, July 28, 2020

Power Automate: Working with Microsoft Graph API and Teams Connector

In this video you will learn the basics of the Microsoft Graph API, how to use Graph Explorer, register an application to use Microsoft Graph in Azure Active Directory, and build a simple flow that will use the Teams Connector and Graph API to list a set of tabs in a Teams channel. 
 
Other topics covered are: compose and HTTP actions, using the compose action as an alternative to variables, using the filter array action to filter the results in a JSON payload. 



References:
Microsoft Graph: https://graph.microsoft.com  

Credits: 
Creative Minds - Bensound - Royalty free music at https://www.bensound.com

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Tuesday, July 7, 2020

Power Automate: Calculate Soundex of a word with a flow

In this video, I will be showing you how to use Power Automate to calculate the Soundex value of a word using a flow. This calculation uses the American standard algorithm, but can be adapted to support other algorithms developed for the English language.

 

In building the workflow you will learn how to use the ScopeCompose, and Append To String actions, the Do Until and If Then control structures, along with the substring(), replace(), add(), and mult() functions. Please leave your comments below.

References:
Wikipedia Soundex entry - https://en.wikipedia.org/wiki/Soundex

Downloads:
Power Automate Cookbook: Click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Friday, June 19, 2020

Power Automate: Building a REST endpoint with the HTTP Request connector

In this video I show you how to build a REST endpoint with the Power Automate HTTP Request connector to be used as a web service to transfer data to a on-premises SQL database. In the process, I will be using Postman API development platform to test the endpoint and submit data to a Microsoft Dynamics GP company database via its eConnect API stored procedures.

 

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Wednesday, June 10, 2020

Power Apps: Calculating various dates with date functions

In this article, I will show you how to leverage the DateDiff(), DateAdd(), Weekday(), DateValue(), and Day(), and Today() functions to calculate all sort of dates that are typical to business applications: first and last day of previous month, first and last day of previous quarter, first and last day of previous week, first and last day of current month, first and last day of current quarter, first and last day of current week, first and last day of next month, first and last day of next quarter, first and last day of next week, etc.



Let's begin:

Each calculation is self-contained for convenience sake, which means the only dependency is on the cdt context variable.

Current Date
UpdateContext({cdt:Today()});
Note: you could also use the Now() function, but be aware that this function also includes the timestamp.

First Day of Previous Month
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            mts: DateDiff(
                rootdate,
                cdt,
                Months
            ) - 1
        },
        DateAdd(
            rootdate,
            mts,
            Months
        )
    )
)

Last Day of Previous Month
DateAdd(cdt, -Day(cdt), Days)

First Day of Current Month
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            mts: DateDiff(
                rootdate,
                cdt,
                Months
            )
        },
        DateAdd(
            rootdate,
            mts,
            Months
        )
    )
)

Last Day of Current Month
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            mts: DateDiff(
                rootdate,
                cdt,
                Months
            ) + 1
        },
        With(
            {
                FirstNxtMonth: DateAdd(
                    rootdate,
                    mts,
                    Months
                )
            },
            DateAdd(
                FirstNxtMonth,
                -1,
                Days
            )
        )
    )
)

First Day of Next Month
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            mts: DateDiff(
                rootdate,
                cdt,
                Months
            ) + 1
        },
        DateAdd(
            rootdate,
            mts,
            Months
        )
    )
)

Last Day of Next Month
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            mts: DateDiff(
                rootdate,
                cdt,
                Months
            ) + 2
        },
        With(
            {
                FirstNxtMonth: DateAdd(
                    rootdate,
                    mts,
                    Months
                )
            },
            DateAdd(
                FirstNxtMonth,
                -1,
                Days
            )
        )
    )
)

First Day of Previous Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qtrs: DateDiff(
                rootdate,
                cdt,
                Quarters
            )
        },
        DateAdd(
            rootdate,
            qtrs - 1,
            Quarters
        )
    )
)

Last Day of Previous Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qrtr: DateDiff(
                rootdate,
                cdt,
                Quarters
            )
        },
        With(
            {
                NxtQrtr: DateAdd(
                    rootdate,
                    qrtr,
                    Quarters
                )
            },
            DateAdd(
                NxtQrtr,
                -1,
                Days
            )
        )
    )
)

First Day of Current Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qtrs: DateDiff(
                rootdate,
                cdt,
                Quarters
            )
        },
        DateAdd(
            rootdate,
            qtrs,
            Quarters
        )
    )
)

Last Day of Current Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qrtr: DateDiff(
                rootdate,
                cdt,
                Quarters
            ) + 1
        },
        With(
            {
                NxtQrtr: DateAdd(
                    rootdate,
                    qrtr,
                    Quarters
                )
            },
            DateAdd(
                NxtQrtr,
                -1,
                Days
            )
        )
    )
)

First Day of Next Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qrtr: DateDiff(
                rootdate,
                cdt,
                Quarters
            ) + 1
        },
        With(
            {
                NxtQrtr: DateAdd(
                    rootdate,
                    qrtr,
                    Quarters
                )
            },
            DateAdd(
                NxtQrtr,
                0,
                Days
            )
        )
    )
)

Last Day of Next Quarter
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            qrtr: DateDiff(
                rootdate,
                cdt,
                Quarters
            ) + 2
        },
        With(
            {
                NxtQrtr: DateAdd(
                    rootdate,
                    qrtr,
                    Quarters
                )
            },
            DateAdd(
                NxtQrtr,
                -1,
                Days
            )
        )
    )
)

First Day of Previous Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset - 7,
            Days
        )
    )
)

Last Day of Previous Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset - 1,
            Days
        )
    )
)

First Day of Current Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset,
            Days
        )
    )
)

Last Day of Current Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset + 6,
            Days
        )
    )
)

First Day of Next Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset + 7,
            Days
        )
    )
)

Last Day of Next Week
With(
    {rootdate: DateValue("01/01/1900")},
    With(
        {
            diffval: DateDiff(
                rootdate,
                cdt,
                Days
            ),
            Offset: 1 - Weekday(cdt)
        },
        DateAdd(
            cdt,
            Offset + 13,
            Days
        )
    )
)

You can download the application on the Power Apps Community apps gallery

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1
LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Monday, June 8, 2020

Power Apps: Mixed Reality spatial controls

For the final installment of the Power Apps Mixed Reality series, I'm going to show you how to use the MR spatial controls, Shape in MR and Measure in MR. You will get to understand a bit more about the available properties for these controls and how they interact with collections and galleries to produce an app.


To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Thursday, May 28, 2020

Power Apps - Mixed Reality 3D Viewer and MR Viewer controls

In this video, I show you how Power Apps Mixed Reality works from the ground up. We will build a simple app that leverages the 3D Viewer and MR Viewer controls to display a 3D model of Star Trek's USS Endeavour. Somewhere, I also introduce the use of the Power Apps Self operator and show you how you can capture images from your Augmented Reality (AR) experience and store them in a collection

 

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Fun and Non-Traditional uses for Power BI, Power Apps and Power Automate

In this video, I teamed up with fellow Microsoft MVPs, Belinda Allen and Daniel Christian, to show some non-traditional use cases for Power Platform. You will see examples on motion and creating motion patterns for things like the Solar System in Power Apps, cool data analysis of everything from the lottery numbers to UFO sightings to fact checking politicians in Power BI, and a showcase of Star Trek's Starfleet with using mixed reality, along with some Galaga game concepts, all in Power Apps.

 

Recorded at the Virtual Power Platform World Tour held on May 14, 2020.

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Wednesday, May 6, 2020

#Hack4GoodMBAS 2020 Global Hackaton

This past weekend, I was privileged to participate on the 24-hour Hack4Good MBAS 2020 global hackathon, carried out prior to the Microsoft Business Applications Summit 2020.

The theme for this hackathon revolved around COVID-19 and challenged all participating teams to create innovative solutions leveraging the entire Microsoft stack to solve a single problem. The hackathon involved teams from across all continents.




From left to right and top to bottom, me, Vivek Bavishi, Jon Levesque, April Dunnam, Geetha Sivasailam, and Joe Unwin, collectively Team FlowFam.

Our use of Microsoft Power Platform, Mixed/Augmented Reality, and advanced search and location services and data storage allows this solution to be used in several settings, but we decided to build a tool that could potentially help government and city planning officials, along with military engineers to quickly locate facilities and public spaces, measure and create floor plans, quickly calculate and plan bed space requirements, and place a request for beds to fill the space.

This 5 minutes video summarizes our 24 hour effort - more to come!



Here's the announcement by the judges evaluating the #Hack4GoodMBAS hackathon solutions. Our solution, SpaceR, was selected with one other among 11 teams participating across the Americas and has been entered into a pool of world finalists (APAC, EMEA, AMER) where it will be evaluated by a team of Microsoft judges.

Winner will be announced at the next Microsoft Business Applications Summit which you can register and attend for free.

 

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Friday, May 1, 2020

Power Platform Share with Steve, Mariano, and Belinda (Episode 7)

I caught up with fellow MVP’s Steve Endow and Belinda Allen again for our Power Platform Share and have invited a special guest, fellow MVP Reza Dorrani to present some of the latest Power Platform features and stuff he's been working on. Suffice to say Reza blew us away with his COVID-19 tracker while showing some of the new mapping and geospatial capabilities available with Power Apps.

 

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Working Remotely with Microsoft Dynamics GP

I had a chance to sit down with fellow MVPs Belinda Allen and Shawn Dorward, GPUG All*Star Amber Bell, and Zubin Gidwani from Dynamic Budgets to talk about "Work from Home" strategies with Dynamics GP amidst the Coronavirus stay at home orders

Each one of us was tasked with presenting a rapid fire session outlining an approach to work remotely with Microsoft Dynamics GP.


To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Friday, April 17, 2020

Power Apps - Introduction to Mixed Reality

This is the first video in a 2-part series that explains some of the basic concepts behind Mixed Reality. Learn what is a model, how you can compose a model file, pack it for consumption by Power Apps and having fun while doing it all.

 

Disclaimer:

I am no mixed reality expert. This is just my personal experience trying to understand the elements and concepts behind it for the everyday citizen developer. I don't talk about Azure Mixed Reality or anything the Azure platform has to offer to developers. This is a simple "here's how you compose and pack a model for use with Power Apps Mixed Reality" video.

References:

GLTF to GLB Packer - click here
Microsoft 3D Viewer - click here
Microsoft Paint 3D support documentation - click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Monday, March 23, 2020

Power Virtual Agents - Create a Chat Bot for your on-premises ERP

This video shows how you can combine the power of Microsoft Power Virtual Agents chat bots and Power Automate flows with your on-premises data to provide an all around navigation-free user experience.

While this video features Microsoft Dynamics GP as the on-premises ERP, technically speaking, you could create a chat bot for just about any ERP system in the market, whether on-premises or in the cloud. In fact, why stop at ERPs?

 

Reference:

Power Virtual Agents page - click here
Use Power Virtual Agents Connector to build Power Automate flows for your bot - click here

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Saturday, March 14, 2020

Power Apps - Using Azure Text Analytics to monitor Coronavirus COVID-19 updates

In this video I describe a Disease Monitor App I created as part of the #TemplatesForHumanity effort championed by Keith Wathling (Twitter: @KeithWathling) a couple years ago and that I have completely rehauled to support Coronavirus with an updated interface and approach to retrieve sentiment analysis with Azure Text Analytics.

You will learn about:
  • Using Text Analytics API in Power Apps (click here)
  • Power Apps Collections (click here)
  • Power Apps UpdateIf() function (click here)


References:

Download this app from my GitHub repo here.
#TemplatesForHumanity on Twitter here.

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Thursday, March 5, 2020

Using Power Apps & Power Automate with On-Premises Data

Hello everyone!

I sit down with Samuel Adranyi (@sadranyi) from Ghana, on his Power Series show, to demystify the user of Microsoft Power Apps and Power Automate with on-premises data. We cover the On-premises Data Gateway, its architecture, hybrid connectors, and provide a couple samples on accessing on-premises ERP data with both Power Apps and Power Automate.

 

References:

What is the On-premises Data Gateway? - click here
Install an on-premises data gateway - click here


To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Saturday, February 22, 2020

Power Automate - Affirmation messages with Flic and the Twilio connector

In this video you will learn how to setup a Twilio account, provision a phone number, and combine this with Flic and Power Automate to create an affirmation messaging system. You will also learn about the HTTP connector and the Parse JSON action. The result is this fun application of technology to deal with the everyday tensions in life. However, you can apply this to any areas of the enterprise, i.e., to create an emergency alert system or a company wide notification system.

 

References: Power Automate - Setting up and registering Flic hubs and buttons - https://youtu.be/PJbiS02pvEs

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Friday, February 14, 2020

Power Automate - UI flows Introduction

Hello Friends!

I had a chance to sit down with the incredible Jon Levesque, Senior Program Manager on the Microsoft Power Automate team to do a UI Flows 101 session. The result? A video with over 8K views!



This video covers the basics:

1. How to get started
2. Where to find the On-premises Data Gateway
3. Installing the UI Flows desktop plug-in
4. Types of UI flows
5. A simple demo on how to automate a desktop application

References:

UI Flows Setup documentation: https://docs.microsoft.com/en-us/power-automate/ui-flows/setup
To download UI Flows Installer: click here
To download Selenium IDE for Web Automation: click here
To download the On-premises Data Gateway: click here

With these items installed, you should be all set to follow along with me and Jon in this tutorial!

To check out my YouTube channel visit: https://youtube.com/user/mgomezb1

LIKE AND SUBSCRIBE!!!

Until next post!

MG.-
Mariano Gomez, MVP

Power Automate - Setting Up and registering Flic hubs and buttons

Most videos about this subject show you how to create all sort of Flic demos, but most don't stop to show you how to get the Flic hub and buttons set up and registered with Power Automate. This video will explain where to obtain the software, how and where to install it, the Flic hub and buttons pairing and registration with Power Automate, and how to get a flow started that leverages the hub and buttons.

 

References:

Flic 2 Smart Button website: https://flic.io/

Until next post!

MG.-
Mariano Gomez, MVP