Search

Search this blog:

Search This Blog

Showing posts with label Work Smarter. Show all posts
Showing posts with label Work Smarter. Show all posts

How Power BI picks the legend colours


I've just had a wonderful discovery about why Power BI sometimes seems to choose random colors in the legend. 

Typically, the first item in a series will match the first color of your Power BI theme, the second item in the series will match the second color of your Power BI theme, and so on. 

However, this isn't always the case. I have noticed that sometimes when I have text category values for my legend that Power BI can assign random colors, seemingly not even part of my theme. Until recently, I just accepted this as a quirk of Power BI and carried on with my report development. 

While developing a new Power BI theme JSON file and reading up on the nitty gritty details, I learned a few things that have helped me understand what's actually going on. 

Dynamic Series

The first thing I learned about was "dynamic series". You can find the Microsoft Docs definition of dynamic series in small print under the very long theme article in the How Report Theme Colors Stick with Your Reports section. 

What is a dynamic series?

To understand dynamic series, we need to understand what is meant by 'series'. Series is the fancy data viz term for items in the legend. There are two ways in Power BI visualizations to get more than one item in the legend:

  1. Add a column to the 'legend' property of a visual.
  2. Add more than one column to the values property of a visual (this could be called 'Values', 'X-axis', 'Y-axis', etc depending on which visual you're using).

When you use option 2, the number of items in the series will always equal the number of columns you added to the values property. This is a 'static series' because the number of items is static (meaning it doesn't change). 

screenshot Power BI dynamic series example

A dynamic series occurs when you use option 1. Depending on the filters and slicers in the report, the number of items in the list of values of the column used in the 'legend' property could change. Let's use months of the year as an example. 

In the image above, we have added 'Month name' to the 'legend' property of the visual. So you can see we're using option 1 for creating more than one series in Power BI. This enables 'dynamic series'. We know there are always 12 months in the year, so it may seem like this is a static series. However, depending on the report filters and slicers, you may only see some of those months at a time. 

As you can see in the image above, March is always red, even when February is missing. This helps ensure that color has meaning throughout your report and that even if you're only showing quarter 4 (October, November, December), they'll maintain the mauve, green and charcoal colors. 

Themes have unlimited colors

 The second thing I learned about the seemingly 'random' colors that Power BI applies to text categories / legend items is that a theme has more than the 8 colors you see in the Power BI desktop interface. If you use the JSON file to customize your theme, you can provide as many colors as you want (there's probably a limit but I haven't needed to find it yet). That means when you have a series with more than 8 items, Power BI will continue down the color list in the hidden JSON file until it runs out of colors. Then it will repeat. 

Conclusion

So, if you see random colors popping up in your Power BI report, don't change them at the visual level. Figure out how many potential items are in your series and update the JSON theme to provide more color values if needed. 



Copy and Paste DAX Code - Power BI Hack


 This blog will be short and sweet, but it's a game changer for those of use learning DAX.

One of my favorite keyboard shortcuts in DAX Power BI desktop is:

Ctrl Shift L

This lets you easily change multiple values in one go. 

It is a bit strange and takes some practice to get used to what data to select and typing in multiple places at once, but it's super handy once you get the hang of it. 

Here's a demo on how it works: 



Setup Outlook Rules to Reduce Spam in your Inbox


 This post is inspired by an email I got last week that turned into over a spam dozen emails simply because the sender of the email did not change the 'Reply To' field.

Most of my students are fairly good about using the 'Reply All' option sparingly in Outlook. However, with the increased use of Microsoft Teams and Office 365 Groups, I'm seeing a lot more email trails sent to large distribution groups. A simple 'Reply' will send an email to everyone in the group - same damage as hitting 'Reply All'. 

So how can we avoid getting spam from distribution lists?

Sender Action: Change Reply To in Email Options

If you're the owner of a distribution list, whenever you send an email from that mailbox, ensure you set the 'Reply to' value to an individual email rather than the entire distribution list.

This can be changed under Email Options when you 'Pop out' the email in Outlook;

Select 'Direct Replies To' in the ribbon:

screenshot Outlook message ribbon

Then type your email in the 'Have replies sent to' box:

screenshot Outlook options

This will automatically update the 'Reply' behavior to put any email(s) you put in that box into the Reply field of an email when recipients hit 'Reply'. If they're observant enough they'll notice. So don't worry, you're not doing anything dodgy.

Recipient Action: Setup Outlook Rules

Unfortunately, we can't always just ask the recipient to setup 'Direct Replies To', so we need to take control of our own Inbox and filter out those junk replies.

Outlook Rules can help manage this:

In the Home tab in the ribbon, select Rules > Manage Rules & Alerts. 

Click New Rule > Create Rule on Messages I receive. 

screenshot Outlook rules

Click Next.

Tick 'To specific people or Group'.

In the bottom pane, click the blue hyperlink to add the email, and type the email for the distribution list.

Click Next to define the action.

Tick 'Stop processing more rules' and 'move it to the specified folder'.

In the bottom pane, click the blue 'specified folder' hyperlink to select a folder. You can move directly to Deleted Items if you're feeling confident, or select / create another folder to store them in.

Click 'Next' again to add exceptions: 

Tick 'except if from people or public group'.

Type the SAME EMAIL as the distribution group you typed in the first screen.

Your rule should look something like this when completed:

screenshot Outlook rules setup

Basically, this will ensure that you receive the original email sent from the distribution list, but all replies to it will be deleted/moved.

Note: This will also delete any emails sent to the distribution list in the first instance, so may not work for all scenarios. 

Reply to Teams Message


Woohoo! It's finally made it to Teams Desktop. Thanks Microsoft for the updates - keep 'em coming!

Reply to Teams Chat

As of this month, we can now reply directly to a message in a Teams chat on mobile AND desktop: 

screenshot Teams reply

This functionality has been available on the Mobile Teams app for quite a while, but only just made its way to desktop. If you don't regularly check the 'What's New' section of Teams, add it to your list of things to do while procrastinating. Just click the 'Help' icon at the bottom left of Teams > What's New.

screenshot Teams What's New

Reply to Teams Channel

Unfortunately this functionality is not available in Teams Channel conversations. You can reply to the entire thread, but not to an individual comment. In order to reference a specific comment or message in the thread, I can still recommend using "Windows Shift S" to take a screenshot, followed by a "Ctrl V" to paste it into the reply window. 

Screenshot / Snipping Tool Windows Shortcut

These screenshots are brought to you by the letter S.

This is probably my most used keyboard shortcut of all time. Just hold down the Windows key and Shift key at the same time, then tap the 'S' key (S is for Snipping or Screenshot):

Windows Shift S

Even if you take screenshots 10% as often as I do, you'll love the ease and flexibility of this tool. It enables you to copy a specific area of your screen straight to the clipboard, or edit it first and then copy to clipboard. Then you can paste it anywhere you want to send. Try it out now and see what you think. Does it do everything your current snipping tool does? 

Tokyo Olympics: Automate Twitter Posts


 

If you follow me on Twitter (@ExcelAllison) you may have noticed I've been playing around with Power Automate and sending out automated Tweets throughout the Olympic games. I've really been enjoying following my two 'home teams' and watching the medal tallies tick up, with near-instant alerts. 

Power Automate

Power Automate is a fantastic tool and really versatile in what it can do. It doesn't require any formal coding, though there is a bit of a learning curve at first and it does help to have some basic understanding of logical functions. However, if you put in a few hours a week to get up to speed with Power Automate, it could save you 2-3 days a month that you'll no longer have to spend on repetitive administrative tasks. I'm not exaggerating - there are studies and the time saved is real!

screenshot PowerAutomate

Objective

The goal of this exercise was to a) demonstrate the capability of Power Automate and b) drive traffic to my Tokyo Olympics 2020 Power BI report and blogs. I wanted to take advantage of the live data streaming throughout the Olympic games and engage with it on some level. I'm not very good at Twitter, but I knew that Power Automate has a Twitter connector so thought I'd give it a go - it's the perfect public forum for testing and showcasing the Power of Power Automate and Power BI together.

Born in the US but living in NZ, I wanted to keep up with both teams throughout the Olympics. NZ tv have been doing a good job of keeping us posted on the Kiwi results, but getting instant updates on the US athletes required a bit more effort. 

Key Components

Okay, so let's lay out the concept from start to finish: 

  1. Connect to live dataset using Power BI
  2. Create explicit measures for the key metrics we want to track (in this case total medals earned by NZ and total medals earned by US)
  3. Publish Power BI dataset
  4. Setup automated, scheduled refresh on Power BI dataset
  5. Create dashboard and manage alerts for the two key metrics
  6. Create flow in Power Automate that is triggered by the alert

We've already completed steps 1-5, so this post is all about step 6. As I started working through this process, I further developed step 6, thinking about what I wanted to accomplish with my flow and what my goals were. I wanted to:

  • be alerted when my favorite teams won a new medal
  • understand what they had won or what was happening in the Olympics
  • share that joy with others

Power Automate has lots of connectors for alerts, notifications and information transfer, but Twitter seemed like the perfect platform for sharing the joy with others and also for figuring out what else was happening with the team.

I created two identical flows - one called 'Congrats Team NZ' and one called 'Congrats Team USA'. To simplify this post, we'll focus on the Congrats Team USA post (I used this one for testing purposes as USA got a medal before NZ and has earned more medals than NZ, so this flow has given me more opportunity to refine and test the process.)

Congrats Team USA

 After a few iterations and learning a bit about Twitter and the Twitter connection, I have developed the 'Congrats Team USA' flow to complete the following tasks: 

  1. Start whenever a new medal has been earned by US (as triggered by alert in Power BI dashboard)
  2. Search for Tweets from @TeamUSA on Twitter - limit search to 1 latest Tweet
  3. Retweet that Tweet (hope here is that it's related to the medal they've just earned)
  4. Post new Tweet - apparently this can't be the same Tweet over and over (and I'm sure my followers would get tired of it too) so I developed a list of inspirational quotes to add to this Tweet. In order to post the new Tweet, Power Automate will:
    1. Go to the SharePoint list of quotes, find the next in sequence and add that text to the Tweet
    2. Update the sequence of all quotes in the SharePoint list to move all items forward one place in line (getting ready for the next run of the flow with a new quote)
    3. Post the Tweet on Twitter

Twitter Rules

There are a few restrictions that Twitter and/or Power Automate place on your tweets that might be common causes for failure, so double check you've got all these in place if you want your flow to succeed:

  • 280 characters or less: Tweets must be less than 280 characters! If you exceed this limit, your flow will fail.
  • Avoid duplicates: You can't post the same tweet twice, nor retweet the same tweet, within a certain time period. Ensure your tweets are unique.
  • Volume quota: Keep within the limits of the Twitter API 
  • # not @: Mentioning users or any reference to @ character will be removed from your tweet, but # and hyperlinks are ok.

How To

Alright, so how do we setup this Flow?

Step 1: Create SharePoint list of Quotes

From Teams or SharePoint, create a New List. Lists are a super cool app that probably deserve an entire post to themselves, but I'll go through the essentials here. I created a new Blank List. 

screenshot SharePoint list

By default, this list will have a single column called 'Title' that must be single line of text and is a required field.

Click on the Settings cog at the top of the list and choose 'List Settings'

Scroll down to find the 'Title' column and click on the link to edit the column. Untick the required box and Save. 

Add a new column - multiple lines of text and call it 'Tweet Text'.

Add a new column - number and call it 'Sequence'. 

We'll use both of these new columns in our Flow.

Now click on 'Edit in grid view' and add some inspirational quotes or Tweet messages. Remember the character limit! For the 'Sequence' column, start with 1 and increment by one each row. 

Click 'Exit grid view' to save your changes.

Step 2: Create Flow

Navigate to Power Automate and click 'Create' to start a new flow. 

Click 'Automated cloud flow'

Type 'Congrats Team USA' (or fill in your team name).

Trigger: When a data driven alert is triggered

Search for Power BI in the triggers. Select 'When a data driven alert is triggered'. Click 'Create'.

Search Tweets

Click 'New step' and search for Twitter. Add the 'Search tweets' action. At this stage you will be asked to login to your Twitter account to create the connection.

Enter your desired Search text. In my flow I put 'from:@TeamUSA' as my search text. 

Expand 'Show advanced options' and limit the maximum results to 1.

screenshot search tweets step

Retweet

Click the 'New step'. Search for and add 'Retweet'. 

From Dynamic Content, add the Tweet Id from the Search Tweets step. This step will automatically get added to an 'Apply to each'. Even though we limited our search results to 1 Tweet, Power Automate still sees it as a list of Tweets, so will Apply the RETWEET to each search result. 

Click the three dots at the top right of the Retweet step and ensure it's using your signed in Twitter connection.

Variables: Quote and NewSequence

Variables are basically a box to hold information. You can then move and reuse this information, or even add and subtract from it. Variables MUST be initialized in Power Automate before you can use them. In this Flow, I created a String variable for 'Quote' and a Float variable for 'NewSequence'. 

I left value blank for both, we'll assign this later.

Get Items (SharePoint List)

Add a new step for 'Get Items'. This will return the values of the columns in a SharePoint list. 

Select your Site Address and List Name that we created in Step 1 from the drop down.

Apply to each SharePoint List Item

Add a new 'Condition' to the Flow. Choose 'Sequence' column from the Get Items step. This will automatically wrap the Condition inside an Apply to each step. Everything we do in here will now be done to EACH item in the SharePoint list. 

screenshot Flow apply to each SharePoint List item

We want to find the next Quote in Sequence - our list starts with Sequence = 1, so that's the quote we want. Ensure your Condition looks like the image above: Sequence is equal to 1.

If yes, add a step for 'Set variable'. Set Quote text Variable to 'Tweet Text' column from the Get Items step. Since we're still inside the Apply to each, this will happen for each item, IF the Sequence is equal to 1. If no, we'll leave that blank.

Now add an action for 'Set variable' below the condition, but still inside the Apply to each. We want to shift ALL the items in the list (not just the one we chose for the quote) so that they move 1 place in line and the next list item ends up with Sequence 1 for the next time this flow runs. 

  • Set the 'NewSequence' variable equal to value of 'Sequence' column from the Get Items step.
  • Add a new step for Increment Variable. Choose the 'NewSequence' variable and type -1 in the value to increment. 
  • Add an new step for Update Item (SharePoint list). Select your Site Address and List Name that we created in Step 1. Put the ID from Get Items into the ID field. Put NewSequence variable in the Sequence field. This moves every item one step forward in sequence/line.

Post Tweet

Below the Apply to Each, add a new step at the very bottom of the flow and search for: Post a Tweet.

Type your Tweet text, be sure to include the Quote Text variable in there somewhere and follow the Twitter character limits!

screenshot Post Tweet step

Save & Test

Once you're happy with your Tweet, save it and test when the Power BI alert triggers. You may need to come back to edit and troubleshoot some small errors. Remember - all testing in Power Automate is live to the data connection. You may want to use a test Twitter account or SharePoint list for testing. When you're ready, you can easily update the connections to the live data sources and Twitter accounts. 

Enjoy!

MS Ignite Updates


Microsoft Ignite Announcements

Microsoft Ignite is on now and there are so many fabulous sessions to choose from. I'm co-hosting a Power BI table talk in a few hours and enjoying all the other presentations in the meantime. 

Check out the Ignite Book of News for the latest announcements. 

Teams


Teams Presenter controls and flexibility are improving, giving you options for how to view video and attendees, and making it possible to see the presenter view of PowerPoint while sharing on Teams - all with just one screen! Yay!

As someone who does a lot of webinars, I'm really keen to see how the attendee registration will work - this could make a few of my flows in Power Automate redundant!

Cool Outlook Updates

I'm so excited that Outlook is getting a face lift. I feel like Outlook has been neglected in feature updates over the past many years. Why fix what isn't broken? Well, modern work is changing and we need to be more dynamic, flexible and agile in our work approach. 



The new Outlook board view experience will make it easier for you to keep exactly what you need at your fingertips and customize your Outlook Productivity Platform to meet your needs. 

Power Platform

Power Fx

The Power Automate language, Power Fx, is being rolled out across the Power Platform. You may have heard this previously called 'Excel Speak' because many of the functions are based on or borrowed from Excel. It is designed as a low code coding language and making that transition from Excel to Power Fx is easy if you start with the basic, similar functions. 



I am so excited to have some consistency across the Power Platform and can't wait to see how Power Fx evolves now that it's open source.

Power BI Premium Per User

Woohoo! It's finally here - a Power BI Premium that's accessible to small companies. 



Power BI Premium Per User is really well priced at only $20 USD per month per user and comes packed with all the greatest features that you didn't have with pro, including:

  • Paginated reports
  • Improved email subscription functionality
  • Machine learning and AI integration

Register for MS Ignite 2021

It's not too late to register for MS Ignite - many of the sessions are available on demand and there's lots of good networking opportunities too. See you there!

Twelfth Day of Christmas: Power BI Bookmarks


 ðŸŽµ On the twelfth day of Christmas, my true love gave to me... 

Report resetting bookmarks, 

Data storytelling

Data driven emotions,

Meaningful Switches

Syncing Slicers Slicing,

Conditional Drill-through Button,

Verified User Selections

Dynamic titles,

Custom theme colors,

Appended queries,

Table expanded columns

and

a PDF in Power BI🎵

Bookmarks

When I say the word 'bookmark' what do you think of? I must say, I've always had an affinity for bookmarks, but not always Power BI bookmarks. When I was in primary school, a bookmark was a witty or artsy piece of cardboard that I collected more for the love of their design than for their functionality (I plowed through books so quickly I often read them in one sitting). My great grandma knew this and taught me how to crochet bookworms, which she used as gifts for her 4th grade students (who I'm sure also loved them more for their design than their function). 

As I grew older, the books I read got longer and bookmarks became more functional. Design wasn't as important and I used anything and everything to mark my page: paperclips, hair-ties, the due date card from the front of the library book, or a piece of yarn leftover from my knitting. 

In college, bookmarks were a necessity, helping me to keep organized and find important pieces of text, data or references for final reports and exams. I even used bookmarks on a computer to find my favorite sites on the internet. 

Now I sit here writing a blog on bookmarks in Power BI and wondering about the etymology of the word. When did bookmarks move to computers? What book am I marking in Power BI? 

I must say, it is very intuitive to use a good old fashioned bookmark - just slide it in a book on the page you want to be able to return to quickly. To return to that page, simply find the bookmark. If you have lots of pages you want to find, you can get fancy with some colored sticky note tabs, but that's really where the functionality ends.

Power BI Bookmarks

Power BI bookmarks may be slightly less intuitive, but they are so much more powerful. Not only can you use bookmarks to return quickly to a page in your report, you can: 

  • save your current filter and slicer settings by enabling the 'Data' bookmark property
  • hide or display buttons, visuals and tooltips by enabling the 'Display' bookmark property
  • jump to a specific page by enabling the 'Current page' bookmark property

And unlike paper bookmarks, you can put them in any order you want and use them to retell a story in the form of a click through presentation.

Save Filters

Power BI Service has a "Reset to default" option that enables you to restore all filter and slicer settings to how they were saved by the report owner. This means we don't need to create this bookmark ourselves, just teach people how to use the functionality.

However, the "Reset to default" option only resets the filters and slicers to how the report owner designed - it doesn't return you to the original page that the report was saved to start on, and it doesn't let you save filter settings that you have created. In some cases that's exactly what we want, but in our SantaList example, we want to make it really easy for people to return to the Home page and select another name. I want the user to click one button and do two actions: 

  1. Navigate to the Home page.
  2. Reset filters so no name is selected.
To do this, we will need to use both the 'Data' and 'Current page' properties of the bookmark. The 'Display' property is optional here - the Display property remembers if visuals are hidden, spotlighted, etc. We haven't done any hiding of visuals in this report so it won't matter if we have this property enabled or not.

Lucky for us, the default bookmark has all properties enabled, so we don't need to do a lot of work to make this work. 

How to:

  1. Open the SantaList.pbix file.
  2. Click the View tab in the ribbon and click the 'Bookmarks' button to turn on the bookmarks pane.
  3. Navigate to the 'Home' page and clear all filters. 
  4. Click 'Add' in the Bookmarks pane.
  5. Rename this bookmark to 'Reset Home'.
  6. Navigate to the 'Check the List' page. 
  7. Select the 'Return to Santa's Workshop' button you created in Day 7. 
    1. Change the Action to 'Bookmark'
    2. Select the 'Reset Home' bookmark
  8. Save and test the report.

There are so many cool things you can do with bookmarks, this is just the beginning. I highly recommend you explore and see what you can do, and comment with any questions or struggles you encounter. 

Thanks for celebrating the 12 Days of Christmas with me. If you missed any of the days, check them out in the links above. I hope you've enjoyed the posts, learned something new and are inspired to build stunning data stories in 2021. 

Create Free Automated Registration Forms with Microsoft 365


I have been doing a few webinars and experimenting with different platforms for registrations, but have found that Microsoft 365 has all the tools I need to seamlessly automate the registration process for attendees and myself. 

Rather than keep this knowledge to myself, I thought I'd share it with you all here. 

Step 1: Use Teams to Create Live Event webinar

Teams Live Events are a great way to reach a wide audience. They enable you to broadcast a variety of content in a webinar style format live. Okay, actually there's a 20-30 second delay, but who's counting?

Create live event

From your Microsoft Teams app, click the Calendar on the far left. 



Once in your calendar, click the down arrow next to New meeting, and select 'Live event'. 

This will open a new window where you can populate all the Live event details. Make sure to select the correct Date, give it a title that you want Attendees to see (this does not update later for attendees if you change it, so get it right now), and provide a description for yourself or other presenters (such as agenda).

Click Next.

Live event permissions

Choose who can view the live event. This is the audience. If you cannot select 'Public', you need to talk to your admin about setting up a Public Live Event Policy. 

How will you produce your live event?

It works really well using Teams to produce your live event - no fancy studio or recording equipment required. 

Tick the boxes to configure your settings. 

Note that audience members cannot speak or present or interact with each other during a live event, so I like to turn on Q&A, as this gives them the opportunity to type questions and interact with the presenter. I also tick the Recording available to attendees as this enables people to watch after the fact if they couldn't join live. You can always turn this off a week or two after the event, and then the link will no longer give them access to the recording. Captions are great for accessibility, so think about your audience.

Click Schedule.

Get attendee link

To share your event with your audience, you'll need to send them the attendee link. 


Simply open the Live Event and click the 'Get attendee link' link to copy the attendee link. Save this somewhere safe, we'll need it later.

Step 2: Use Microsoft Forms to Create Registration Form

There are many ways to create a Form in Microsoft 365, it integrates so well with Office 365 apps such as Teams and Excel. If you're the only one who needs to see registration and attendee information, then you can use any method to create the form, but chances are you might enlist some help at some stage of the process and want to share this form with others. In that case, my favourite way to create a Form is to start in Microsoft Teams and use Forms for Excel. 

Create registration form

Choose the Team where you want the form responses to live. This team should relate to the webinar or topic, and everyone in this team will have Edit access to the registration form. 

Note: This is NOT the team of people you will invite to the webinar, they only need View access. 

Choose the Channel within the Team where you want the Excel file of responses to be stored. Again, this will probably relate to the webinar topic.

Click the Files tab, and select New > Forms for Excel. 

This should open a new browser with Microsoft Forms. 


Format the theme, title, details and questions of the form as you see fit for your webinar. You can ask as many or as few questions as you like.

For this example I recommend you create at least two questions as we will use these in the flow later: 

Add New > Text > Name

Add New > Text > Email

Make both of these questions required. 

Get form ID

In order to use this form in Power Automate, we need the form ID. You can grab this from the URL of the form editing screen. 

Look for the part of the URL that says 

#FormId=

and copy all the letters and numbers after the equal sign. Save this for reference later. 

Step 3: Use Outlook to Create Calendar Reminder

I find it challenging to manage all the webinars I sign up for, especially now that many of them are being offered internationally and I need to calculate time zone differences. If you don't want people to miss your webinar, it's a good idea to give them a calendar invite with the correct time and joining information already populated for them. 

This does add a bit more complexity to the registration setup, but in my opinion it's well worth the time.

Create Calendar Appointment in Outlook

Create a calendar appointment in your own Outlook calendar with all the information you want to share with attendees. Make sure you get the date and time right (include time zone). This is probably a good place to include the attendee link that we saved in Step 1. 

Save .ics file

Save the calendar appointment as a .ics file. You can do this from the File tab in the ribbon when you have the calendar appointment open: Click File > Save As > 

Save this file into SharePoint (I put it in the same Team as the registration form). Choose iCalendar Format for the Save As Type.

(Optional) Get Direct Download Link

In order to make it easy for attendees to open the calendar invite, you should share a link that will automatically start download of the calendar invite. To do this, go to the SharePoint location where you saved the file.

Share this file and grant access so that 'Anyone with the link can view'.

Now click the three dots next to the file, and select 'Details'. This will open a pane on the right hand side. Scroll down to find the 'Path' section and click the icon to copy the filepath: 


You will end up with a link that looks something like this (note this is a sample link I have edited so won't work): 

https://companyname.sharepoint.com/sites/Webinars/Documents/Calendar%20Links/Power%20BI%20webinar%20-%20Survey%20Says.ics

To ensure that it downloads automatically, just add 

?download=1

to the end of the link. It should now look something like this:

https://companyname.sharepoint.com/sites/Webinars/Documents/Calendar%20Links/Power%20BI%20webinar%20-%20Survey%20Says.ics?download=1

You can test it out in a web browser, but save this link somewhere handy so you can use it in your flow.

Step 4: Use Power Automate to Create Flow to send confirmation emails

Open up Power Automate in your Office 365 (or type flow.microsoft.com into the URL of your favourite web browser). 

When you're done, your flow might look something like this: 







I have designed this flow with ease of reuse in mind, so I have created a few variables to enable me to quickly update the flow for my next webinar. Let's start at the beginning though and work through each step: 

Trigger: When a new response is submitted

From Power Automate home screen, click Create and search the templates for 'Forms'. 

The 'Send an email from shared mailbox on Microsoft Form submission' is pretty close to what we're trying to do, so choose that template: 


Now that you're in the form editing screen, we're going to make a few changes:


  1. Rename the flow in the top left. I called mine 'Webinar Confirmation Emails' but you may want to be more specific to which webinar. 
  2. Fill in the Form Id in both the first and second steps. This is the long code we copied from the URL in step 2.
  3. Delete the 'Send an email from a shared mailbox' step. You can use it if you'd like, but I prefer the personal touch of sending the email from me.

Initialize and set variables

Sometimes variables are crucial in the success of running a flow, but in this case I have just added them to make it easier to update the flow for my next webinar. It also makes it easier to show someone else how to maintain the flow, without needing to teach them everything about Power Automate. 

In my flow I have created three simple variables, all of them Type = String. 

  • Webinar Name
  • Webinar Date (in my local time zone)
  • Attendee Time Zone


Note my Attendee Time Zone has a comment - click the three dots at the top of this step and 'Add comment'. This is another way to make it easier to update later; if you're the one updating you don't have to recall what you did, if someone else is helping to update you don't have to teach them the entire flow.

Power Automate (and most things in Microsoft 365) work with UTC time, so we need to convert the time of the webinar so that my confirmation emails go out when I want them to. 

 


Note I have used the dynamic content of my variable, so when I am ready to copy this flow to the next webinar I only need to change the Webinar Date variable and everything will update.

Send Confirmation Email with .ics attachment

Now we need to grab that .ics iCalendar appointment we saved to SharePoint in step 3. There are two ways to share this file, as a link or as an attachment. To share it as an attachment, you need to add a step "Get file content using path".

Browse to the correct Team site and file location in the action.


Then add a step for "Send an email (V2)" for Office 365. Click the three dots and rename this to 'Send confirmation email'. Expand the 'Advanced options' and put the dynamic content of the File Content from the "Get file content using path" step. Note I rename my steps as I go so that they are more meaningful to me.

The trick here is to give the attachment a proper name, including file type. Since it's a .ics file, we need to add .ics to the end of the Attachments name:


Use the dynamic content to fill in the other information in the email. This is where those required Registration Form questions will come into play - it's great to add a personal touch to the confirmation email and address each attendee by name. 

Add links to confirmation email

To add links to the email, just use the action link icon to create the link. If you look closely in my screenshots above, you will see I used the 'compose' action as a step to hold information and called it 'Instructions for Email Links'. I have just discovered the compose box and it's fantastic. You can put anything in here, and here I'm just using it as a holding block for comments and helpful information. In this example, you can copy the attendee link and iCalendar download link for reference: 


Note that this compose box serves no purpose in the flow. You still need to paste these links into the send email action, but it helps store information you plan to use multiple times throughout the flow (dynamic content isn't available in email links yet).

Configure run after to send failure notification email to webinar owner

Since Microsoft Forms free doesn't offer any email validation, we need to build that into our flow. If someone misspells their email or provides a fake email address, the flow will fail when it attempts the 'Send Confirmation Email' step. To make it easier for the webinar owner (they don't want to check the flow details each time that happens), we'll configure run after and send them a custom email.

Add a new step for "Send an email (V2)" for Office 365. Click the three dots and rename this to 'Send invalid email to Webinar Owner'. 

Click the three dots on 'Send invalid email to Webinar Owner' and choose 'Configure run after'. Tick 'has failed' and untick all other boxes, then click Done


This will ensure that your webinar owner only gets notified if the confirmation email failed, if it succeeds, then the flow will skip this step and carry on as normal. 

To carry on with the rest of the flow, the subsequent step should have a 'configure run after' that allows it to run when the failure notification is skipped: 


Add subsequent actions

Add any other actions you wish for your flow. In my example, I have one reminder email going out before the webinar. I have used the 'Delay until' action to get this working and 'Subtract from time' to specify how far before the start of the webinar to send this reminder. Note: You must use UTC time for this step. 

Note that Power Automate integrates with hundreds of connectors, not just Microsoft products. For example, you could link it to your Mailchimp account to help with marketing and follow up after the webinar: 



Once you're happy with your flow, save it. 

Test your flow by filling in the registration form. 

Step 5: Share your Registration Form Link

Now you're ready to share live. All you need to do to take registrations is share that Forms link with potential attendees. I'll leave it up to you to decide how best to promote this (email, website, Twitter, LinkedIn, etc).


Teams Tip: Keep similar topics together


 Finally! Thank you Microsoft for making this feature more obvious in Teams desktop: 



Despite all my best efforts to stress the importance of replying to existing topics in order to keep like messages together, people still started New conversation instead. This breaks the messages into two (or more) buckets and makes it challenging to follow a cohesive thread. 

Now the 'New conversation' option is a button you must click to access. Hopefully this will make it less confusing and decrease the number of accidental new conversations in Teams. 

Remember, only start a new conversation if you want to discuss a completely new topic. If you do, it's best practice to give your conversation a subject line. Click the A icon at bottom left to do this - it makes things easier to find later. 





Cortana Daily Briefing


Recently, Microsoft have given Cortana, their personal productivity assistant, a new task - sending us a 'Daily Briefing Email' to help us keep track of upcoming meetings, promises we made to complete tasks, and schedule time to 'focus'. 



Whether you find it handy or annoying to have a daily email reminding you of outstanding 'tasks' from your email messages, taking control of your own productivity is the key to success. 

  • Do It NOW! Did Cortana find a task from your emails that you missed? If you can action it in under 5 minutes, do it now!
  • Date Activate It! Create a Cortana Quick Step to turn suggested tasks into actual tasks with start and due dates that you can monitor and track progress on.
  • Delegate It! Forward the email to a colleague with a quick description of the task in question. Follow up with them in person or via Teams if it's something that needs more clarification.
  • Delete It! Nothing helpful in there? Not finding these emails useful? Unsubscribe from the daily Briefing email and declutter your inbox. Keep following the strategies that have worked for you up to this point and remember to be Pro-Active, not Re-Active.

How to Create a Cortana Quick Step

Click Create New button from the Home tab, Quick Steps group in the ribbon in Outlook.
Type 'Cortana Quick Step' for the Name.
Select Create a task with text of message as the first action.
Add Action.
Select Delete message as the second action.
Choose a keyboard shortcut.
Click Finish.


Quick Steps are fantastic when you find yourself repeating the same series of clicks or actions on a daily or weekly basis. If you love keyboard shortcuts, then Quick Steps are for you! The example above is a simple one to get you started on Quick Steps, and while a similar result can be achieved by using the RIGHT mouse button to drag the email onto the Tasks icon a simple keyboard shortcut or single button can make life that much easier.

References: 

Briefing Email Overview Microsoft Docs Article
Making it easier to stay caught up with Cortana in Microsoft 365 blog by Andrew Shuman, Corporate Vice President Cortana

How to finally sort out your emails by using the Four Ds


ACE were approached by a reporter from the NZ Herald network for comment on an article about sorting out your emails, and I was chosen as the resident Outlook expert and ACE spokeswoman. I teach a variety of Outlook courses, including one on Time Management using Outlook, where I follow up with clients in a one on one coaching environment to see how they are getting on with applying the techniques and tips I showed them.  

If you subscribe to the Rotorua Daily Post you may see my comments or photo in your local paper soon, but for those of you who don't I thought I would share some thoughts with my loyal readers as well.

‘Little and often’ is a great motto for handling your inbox. Try to empty your inbox after each visit. A simple yet effective way to do that is to process your messages by using the Four Ds (Do it now, Date activate it, Delegate it, Delete it) principle.  
Humans have a tendency to hoard things, but you shouldn’t be afraid to delete emails. I find it helps some clients to create a ‘bin’ folder instead of sending the emails directly to deleted items. Psychologically this can be easier than a permanent delete. While you’re at it, why not create a ‘Good News’ folder to file all those emails that make you feel good or tell you thanks. You can also setup some basic Outlook Rules to automatically file or delete messages you don’t need to read immediately.

No-one is immune to the odd moment or two of procrastination. But many of those emails in your inbox can probably be actioned in 5 minutes or less. If that’s the case, do it now. This will save you 5 minutes having to skim or scroll through the same email over and over. Plus it’s so satisfying to tick them off your ‘to do’ list. Setting up some Outlook Quick Steps can help make this easier and faster.
Don’t be afraid to ask for help. I often find clients are storing emails in their inbox simply because they don’t know what to do, or they’re waiting for a meeting to catch up with someone about it. It doesn’t do anyone any good just sitting in your inbox. Take positive action and forward/delegate the email as appropriate or ask for clarification as soon as you receive it.

Any email that doesn’t fit into those three categories (Do it now, Delegate it, Delete it) is important work for you to schedule for later (Date activate it). Did you know you can use your RIGHT mouse button to drag the email into Outlook tasks? Outlook magic! Plus you can use Outlook Categories, Search, and Search Folders to help organise your emails rather than waste time trying to maintain a complex, multilevel folder structure. In short, Outlook is full of features to help you better manage your email and help you move your to do list into Tasks you can action.

3 Tips for Successful Remote Communication


Remote training works! In fact, it can be even more effective than in person training provided you have the right tools.

I have been delivering remote training for over 3 years, but many of my clients are trying it out for the first time. Here's what they've had to say about it so far:

Awesome training! Worked really well, the remote session was great :) Allison was lovely, really helpful, understanding and knowledgeable. I'm really excited to start using Power BI.
- Kelsey Brooke-Cowden, Digital Acceleration Analyst @ Mars

Software perfectly enabled the course to be a success, great how Allison could see all of our screens without having to share them. Great examples, workbook was really easy to follow. Allison is a great tutor, very patient and friendly, and very knowledgeable and clearly passionate. Made for a great learning environment. Really really enjoyed the course :) Thank you.
- Kaitlin Grenside, Finance Assistant @ IT Partners Ltd 
  

There are a few simple things you can do to help ensure you get the most out of a remote training session or any remote communication. I've compiled a few tips below.

TIP 1: Use a headset to reduce noise

Ideally your "home office" should be quiet, well lit and away from distractions. Since not all of us are fortunate enough to have a spare room with a door to close, a headset can be the next best thing. Use a headset whenever on a conference call or training session to filter out some of the background noise for the benefit of your colleagues. Bonus tip: Put your headphones on while working on tasks that require high levels of concentration. This will signal to other people in your household (or 'bubble' as we call it here in NZ) that you're "in the zone".

TIP 2: Webcams add meaning to remote communication

According to Mehrabian's rule of personal communication, body language accounts for 55% of the meaning gathered from communication. Words only make up 7% of the meaning! That means a simple email or Teams chat might be misinterpreted, even a phone call provides less than half the meaning of in person communication. Turn on your webcam and we've got all three bases covered again for successful remote communication.


 TIP 3: Two screens are better than one

We all know two heads are better than one, well the same goes for screens. If you don't have two screens, split your single screen using the keyboard shortcut: Windows Key, Arrow. Try it now: hold down the windows key and tap the left arrow button. To get the most out of remote training or meetings, split your screen(s) between the content and the participants.

If you're using Microsoft Teams to work from home, join me on Tuesday, 14 April, 2020 between 8am-3pm NZST for a free Teams Helpdesk. Just hop on the live chat at ACE.co.nz and let us know your Teams question - we'll sort you out with the answer on the spot.

You can find the products I use and mentioned in this post on Amazon: 
    

Custom Visual Review: Charticulator

This is not your ordinary custom visual - this is EVERY custom visual. Charticulator puts the power to design and develop custom visuals to ...