Blog - Recent Posts

General - The easiest way to convert phone apps to tablet apps

The easiest way to convert a canvas phone app to a tablet app is to use the 'phone to tablet app' converter. This post walks through this process, and verifies that it still works today (in 2021).

Connectors - How to display lists of apps from within an app

It's possible to show lists of apps, connections, and environment details from inside an app using the 'Power Apps for Admins' and 'Power Apps for Makers' connectors. We can also carry out limited sets operations such as removing, or publishing an app. In this post, we'll explore these two connectors in a bit more detail.

Code - How to define a read-only table of static data

From a code project, how do we define a static read-only structure of data, just like what we see when we import static Excel data into an app? In this post, we'll find out where to define this in a project.

Formula - How to use the IF and Switch functions - 3 common examples

The two primary functions to carry out conditional operations are If and Switch. The typical questions that arise include - how do I match a value against numeric ranges, a list of acceptable values, or a list of matching conditions? This post highlights the example syntax that we can use.

Power Virtual Agents - High level overview - what is it, what can it do?

If you're a Power App builder and you're thinking of taking the PL 900 Microsoft Power Platform Fundamentals exam, a requirement is to have a basic understanding Power Virtual Agents.This post provide a high level summary of what you need to know.

Code - Can we hack SharePoint ID columns to be delegable using the greater than/less than operators?

Power Apps recognise a SharePoint ID column in a peculiar way. It recognises an ID column as numeric, but does not support delegable filter operations against this type of column using the greater than/less than operators. In this post, we'll investigate whether or not we can fix this problem in code.

Code - Where do we define datasource, table, and field definitions?

In a code project, where is the code that defines the datasources, table, and field definitions? This post describes the relevant places and as an experiment, we'll see whether or not we can hack the data type definition of a SharePoint field. The purpose of this is to try to a bug where Power Apps doesn't recognise numeric calculated SharePoint columns as numbers.

General - How to apply gradient colours to screens

One way to improve the visual appearance of an app is to apply gradient colours to controls. We may want to apply a gradient colur style to an entire screen, or to specific parts of a screen only, such as header or title sections.In this post, we'll walk through one way to accomplish this, with the help of an HTML text control.

General - How to undelete or restore deleted apps

Have you or someone in your company ever accidentally deleted a canvas app? In this situation, there's no need to worry! We can restore deleted apps with PowerShell and in this post, we'll walk through how.

Monitor tool - An introduction to how to use monitor, and what it can do

Monitor is important tool that all app builders should be familar with. It enables us to debug, diagnose problems with apps, and to trace performance.

Code - Template Apps - How to unhide/re-enable the data panel

By using the code designer, it's possible to hack the behaviour of how an app appears in Power Apps Studio. In this post, we'll examine the manifest file of a canvas app and look at how to modify the contents to unhide the data panel of an app.

Dataverse - How to access data more easily through TDS

We can more easily access records in Dataverse by enabling the TDS protocol. This opens up read-only access to tables through SQL Management Studio and PowerBI. In this post, we'll look at why we might want to do this and the steps to set this up.

Dataverse - How to calculate durations with calculated columns

We can use calculated columns to calculate the difference between two date/time values. The available functions that apply to date fields work only between columns of the same behaviour type. This can cause problems, mostly in cases where we need to calculate an elapsed duration with the help of the Now() function. This post examines this issue, and offers a quick overview on how to define a calculated column.

Email - How to send email with the Office 365 Outlook connector

Sending messages with the Outlook connector can be tricky. What's the syntax to specify multiple recipients, BCC/CC recipients, the 'From' and 'Reply-to' email addresses, the message importance and attachments? How do we define line breaks in the message body? This post will answer all of these common questions.

Dates - The easiest way to return the day name for a date

Given an input date, how can we return corresponding day name - for example, Monday, Tuesday, Wednesday, etc? In this post, I'll describe the easiest way to do this, in a way that supports multiple languages.