Tuesday, November 26, 2019

Dynamic Icons

This is pretty simple and is mainly just a place to dump this code for others to use.  If you're wanting to programmatically change icons on your page and populate/change them based upon inputs from "somewhere else", then you'll need a collection of icons that you can perform a LookUp() against.

For example, say you want a generic toolbar to use in all of your apps and to control that based upon some settings you might import from Excel or retrieve from SharePoint.  This would allow you to have a Collection of Icons displayed that would be populated with only what you need.

 

Wednesday, November 13, 2019

How to create sliding trays

I wrote a broader discussion on Animating PowerApps previously.  That article was a fairly broad discussion per animating in general.


This article is covering a start->finish design on setting up a sliding tray allowing users to show/hide application controls at run-time.

Monday, October 28, 2019

You cannot pass web parameters into a PowerApp on a Teams Channel tab

The title says it all. Well, except that it also doesn't work for any other website or HTTP(S) destination either.  In my opinion, it essentially cripples the argument for embedding forms into Teams for the majority of the use-cases.

NOTE: As of August 5th, 2020, I've included a segment on Dataflex here which might lead toward WHY this is the case and WHY they may never fix this!

I've done a bunch of testing on this last week just to see if there was some magic formula that I'd missed.  And while there are of course some weird workarounds of sending the data to "something else" that then your app reads it out of when it starts, that's a horrible solution.  Particularly when Microsoft wants us all to now work all day inside of Teams.

You can, of course, hard-code a parameter when you add a link to a Website and it will work.  However, you can't change it at run-time.

NOTE: Dataflex data stores show us a path forward through this.  It seems like Microsoft is adjusting how we link items from within Teams and share them w/ PowerApps is changing.  I would HOPE that this is one problem that will be addressed, but perhaps not via passing data within the URL.

Tuesday, August 6, 2019

Importing Excel data into PowerApps

This post walks through the basics of importing data into your application from an Excel Table. 

There is a lot of data that we work with that changes very rarely.  We could always have our application do lookups from online lists, but sometimes it makes more sense to store that data locally within the application.  This allows apps to be usable offline (e.g. mobile phones) and can also make apps more responsive. 

Monday, June 3, 2019

Creating Collections Manually and Using Them

PowerApps mainly focuses on lookups and variables that are linked to data sources that reside elsewhere.  In fact, it is REALLY GOOD at this.  However, what isn't really clearly documented in a single location are the formatting requirements around manual population of the various data sources within PowerApps.

If you're just getting started with static data and are importing it from Excel then read my post on this first and then come back.

Sunday, January 13, 2019

Accessing and using device location

PowerApps really works well for people wanting to streamline a series of tasks that touch an array of systems/endpoints.  One key area in which other solutions fail is when they include mobile devices.

Monday, October 29, 2018

Animating PowerApps

PowerApps does give you a few handy pieces that you can start assembling to make the UI a bit more interesting.  While animated slide in/out trays and menus are not provided by default, you can create them from the tools provided at least in some form or fashion.  Some of this is actually fairly easy if you have the right components to start with.
It looks so easy!

Do keep in mind that as I have mentioned in other posts, you cannot catch the OnHover or OnFocus events specifically, so you might be restricted on certain aspects.

OnSelect is not OnFocus: Translucent Controls Use Case

This is again one of those minor annoyances of something that you'd assume will work this way that does not.  Clearly the PowerApps engine recognizes this event but doesn't really expose you to it in a way you might assume.

It is doing you a "favor" in creating a simple shortcut for when the control is "in focus" for the border thickness/color when a control is in focus, but you cannot catch and respond to an "OnFocus" event because it does not exist.  I hinted at this in an earlier post about Fixing Tab Order.

Therefore, while you can catch clicks into a control easily (e.g. OnSelect event) you cannot catch when the user uses the TAB key to arrive at a control.  In fact, you will also start punching yourself when you notice there also is no OnHover event to catch (although you can control border size/color similarly to above).

Wednesday, October 24, 2018

JSON operations in MS Flow (Power Automate)

Microsoft Flow (now renamed Power Automate probably because a bunch of other stuff in the world is named "Flow") has a lot of assumptions around JSON built into it.  The "Object" variable in Flow is actually only considered valid if it is valid JSON.  In truth, it should be referred to as a "JSON Object" for clarity.  To support this functionality it does some things behind the scenes that aren't expressly shown on-screen.

Ultimately, Flow automatically escapes out any String variable if you add it to a Flow Object variable.  So you don't have to do squat.  For the most part.  Read on.

NOTE: You might also find useful info within the following post as well: Stupid Power Automate Tricks

Monday, October 22, 2018

Using Microsoft Forms with Power Automate/Flow (and SharePoint, PowerApps, Excel and beyond)

Microsoft Forms is a dead-simple UI interface to allow end-users the ability to generate and distribute surveys to internal and even external users.  It isn't horribly complex and the number of things you can do is vastly dwarfed by the number of things you cannot.  However, it is good enough to get some basic Q&A from users w/o bringing a web developer into the equation.

However, what do you do w/ the survey data?  How do I save this data "somewhere else"?  What if I want to include some higher-level logic?

Once you start to understand the pieces of Microsoft's o365 offering you will start scratching your head about how it all connects together.  There are always questions of how/why you should do to integrate X with Y.  But in almost every single scenario, the answer is: do it in Power Automate (Flow).