Learning in Public

This tweet got me thinking:

Building in Public

Presumably the context here is “Building in Public” which Arvid often talks about. The concept being if you’re building a company, a startup, a solution to some problem – that you talk (and publish content) about the thought process going into it, the decisions you’re making along the way. This process, this openness, exposes the “why” to your “what”. It makes the founder and the concept more approachable. It provides context for potential customers, partners, and clients to understand the solution, the impact, and the business more. It will drive engagement, and ideally end up with not just more customers, but more passionate customers.

Arvid and others can do a better job of explaining the “Building in Public” concept, but that’s the takeaway I have from it.

Keep in mind, talking, building, and having conversations doesn’t mean you’re *right* about everything, for sure. But you’re digging in and developing opinions. Ideally, you’re open to discussion on topics and tweaking your opinions as you learn and grow. 

Learning and Doing in Public

“Show evidence of your mastery” The context I’m interested in is around tech skills. And showing mastery here is just as important. 

How do you show evidence? Write a blog post or an article on a site like LinkedIn. Record a demo video. It could start with journaling for yourself until you’re comfortable writing for others. There are lots of ways of getting started and progressing from there. 

For Yourself

  • It can show your current employer what you know, what you’re learning, as well as how well you can communicate.
  • It provides more information to prospective employers if/when you’re looking for a new opportunity.
  • Sharing, writing, communicating: Great practices that develops soft skills.

For Your Company

  • Like individuals sharing stories, organizations can demonstrate proficiencies to clients and customers. 
  • Within a company, teams can share solutions to internal challenges. These often result in other departments wanting to implement similar solutions – not only resulting in business wins but added ROI for the tools and licensing companies invest in. 

For Others

The more you share, the more opportunities there are for folks to learn from you. People learn in different ways. You never know when your style of communication might sync with someone’s method of learning. You never know when that nugget of information you figured out is the one thing they’ve been trying to find.

Jobs vs. Roles

Overview and Context

“Jobs” vs. “roles”. What is a job, versus what is a role. It’s a bit of a baseline-setting, foundational topic to support future posts. Some folks might consider jobs and roles to be the same, or at least very similar. My perspective is that not only are they different, but that it’s important to understand how they are different when it comes to training, skills, and other “how can I fulfill the requirements of my job or even exceed expectations” topics.

The dictionary definitions:

Joba paid position of regular employment.

Role – the function assumed or part played by a person or thing in a particular situation.
Or, to make it a bit more readable:    the function played by a person.

While the definitions tell the difference, there are some nuances. I’ve seen the terms used somewhat interchangeably in business – often when talking with management or folks in HR. I don’t think this is horrible or worth correcting, but it can lead to confusion.

A job is your employment – described by who you work for, where you work, the “whole” of the expectations of you, etc. It aligns with a title you put on your resume, your business card, your LinkedIn Experience section. Job responsibilities likely include many roles, often capped off with: “other duties as assigned”.

A role is usually one of the many things you do, roles you play in your job. Some of those roles are related to soft skills, some are related to tech skills or platforms. In some cases, your job and role might overlap 100%. In my experience, most folks have one primary job with many roles.

To make things a little more confusing, if you work in or around the IT space, terminology used when developing and marketing products, apps, and solutions can overlap here as well. We have terms like “persona”, “user stories”, and “use cases”. These terms tend to have a lot in common with what the rest of us refer to as “roles” and are important when it comes to training and communications. These terms flip the perspective – from the person’s perspective to the product’s perspective. Thankfully the perspectives often meet in the middle and everyone gets along.

Examples

A number of technical products have some or all of the following roles associated to them.

User – A person that uses the capabilities of a tool or service. A consumer of the content or tool. Folks that use Word, Excel, OneDrive, etc. In most, if not all, cases, users have other more primary business roles. Their *job* is not “user”. More often than not these folks don’t think about tech or tool-aligned roles until they are forced to (communications from IT, training, etc.)

Administrator – An administrator might be at a product (M365, Teams, SharePoint, Workday, ServiceNow, etc.) level, or at a more granular team level. They have responsibilities for keeping the system running and configurating the tools and services. In some situations (team, site, or channel), administrators might have both admin roles and business roles. In other situations, administrators may administer many sites or platforms, but not have other business roles.

Developers – Developers customize or extend functionality of existing platforms or create new solutions. They might be exclusively developers but work with a variety of tools or platforms. They might have other business roles but do some development or coding as a part of that job. There are a lot of options. Development vs. low-code developer vs. maker vs. other names, titles, and roles might be a topic for another day…

There are many other variations. Often folks have more than one role with “user” generally being a more-or-less common denominator.

Note: Another potential post topic – When an admin or developer is NOT familiar with user capabilities…

Application of Roles

Why is it important to understand roles? Because roles often define the target audience and the context used for effective communication, training materials, and even functionality in products and services. When roles aren’t accurately understood, communication and training can drop in effectiveness.

HR is another area where understanding roles is important.

  • Understanding existing organizational capabilities and identifying skill gaps
  • Finding resources within a company
  • Assisting hiring managers when creating job descriptions
  • Finding appropriate candidates to hire
  • Assisting employees with skill and career progression

There are, of course, many more examples. Topics to dig into in follow-up posts…

Resumes and Job Sites

When looking for job opportunities in other organizations, we have resumes, LinkedIn, and other services that help folks describe both their jobs and the roles that they fulfill. That’s a lot of information to share – hence the art of writing resumes and getting as much information into as concise a description as you can, with enough teaser info to warrant a second look. Understanding roles, and sometimes giving a name to them, helps folks define themselves more effectively. If there are known, common, role names within an industry or product area, this can help. But individuals are often left on their own to tell their story.

Wrap-up

Why am I interested in clarifying this? I’m working on a project (a SaaS startup) that has to do with technical skills and learning. A core concept in this area are roles – specifically related to technology platforms.

Example: In years past, folks in my industry/community might say: “I do SharePoint”. Cool. Except what the heck does that mean? How do you work with it? What do you do? What are your capabilities? Ultimately, “What can you do for ME?”. It didn’t take long to drill down a bit if you were familiar with the platform. Are you a developer, a site administrator, a platform administrator, a user? Not everyone was familiar with the platform, so that made for challenges. We face similar challenges with platforms today and will likely continue to as new platforms come online and the services we have continue to evolve.

Navigating the skill requirements of roles is key to working effectively. It’s just one of many perspectives – soft skills, etc. are obviously also critical. As employers, managers, trainers, employees, consultants, and team members it’s critical to understand scope and context, to set expectations, and more. The more we understand these roles, the better we can train for them, align them with work, and ultimately set folks up for success.

Other Duties as Assigned

It’s easy to dismiss this often joked about phrase or caveat on many job descriptions. But it’s also useful to note that many folks have found their calling, or at least jobs they’ve really enjoyed because of “other duties as assigned”. I expect the examples are limitless. I spoke with someone this weekend at an aircraft company that got to his current position (and the last few within the company) because of seemingly random knowledge and experience paired with an open mind and open ears. He saw a need, had some input, and eventually moved into a new role.

We’ve seen this happen plenty of times within the IT space as well. Again, plenty of examples. Folks in business departments assigned a tech platform role – or to use a specific tool for the department (e.g., SharePoint Site Owner, Microsoft Teams channel owner, etc.) – that leads down a path they hadn’t considered before.

It’s a fun topic but can come with other challenges and use-cases to address in another post.

Connect Power Apps to SharePoint Online Site Pages Library

Trying to connect Microsoft Power Apps to a SharePoint Online library, specifically the Site Pages library ran into a little snag. Usually, when connecting to a data source you pick the site, then get a list of lists. Site Pages does not show up.

However, you can select the checkbox for the last/blank option, fill in “Site Pages” and proceed.

The connection should work just fine, and you can go about your Power Appy business.

Hiding a “Breaking” News Web Part in SharePoint Online

Overview

The topic of a web part that is visible when it contains content and not visible when there is no content to display came up while delivering a recent session and several folks thought it was interesting so I figured I’d throw the details up in case anyone else needed to see it.

This is purely out-of-the-box functionality that’s available with the News web part and IMO it works pretty slick.

On a page with multiple News web parts, one web part is configured to act as a “Breaking News” web part (above, in red).

This particular web part will only display one or two news posts at a time and is filtered to show items with a custom “Breaking News” property set to “yes”. The web part will not be visible when it is empty and any web parts below it in the same zone will slide into it’s place.

The disappearing functionality is made possible by enabling a setting in the “Layout” section of the News web part shown here:

That’s it. 🙂 Enjoy

References

Rating Technology Knowledge and Experience: Skill Levels

What rating scales can be used to effectively rate technical skills?

Why is this scale important? Ratings can be inherently tough to measure because they are often based on abstract concepts (e.g. good, better, best…). Accurately defining each skill level reduces confusion by respondents, leads to better decision-making based on the data, and enables more effective processes to be put in place to encourage progress from one level to the next.

Personal Experience

When I hear “tech skills inventory” or “assessment” my first thoughts go to that dreaded spreadsheet companies present to new hires to fill out. Typically, the assessment is a list of technology products and services that an individual reviews and gives a rating of something like 1-10 for each item on the list. Totally subjective and almost completely useless.

Scope

Many technology platforms are so large and complicated these days that a single rating is, again, not useful. Someone might very experienced in some parts of these tools and completely inexperienced in others. How do you use a single number/rating to communicate your skill level?

Skill scope/granularity: A topic for another day.

Skill Levels are… Subjective

How does one effectively respond to a skill inventory with subjective rating systems? For example: 1-5, 1-10, “beginner to expert”, whatever the scale. These systems might be useful for folks to start a follow-up conversation, but really not much more.

Why do these systems not work? With a quick search, there are a number of examples out there that use ‘average’ as a descriptor in their rating systems. Some folks (trainers, consultants, etc.) might have enough exposure to have a relatively decent idea of what ‘average’ means, but most individuals won’t. Not having that broader view, that sense of “Average”, leaves these scales to individual perceptions and biases – not something that usually leads to accuracy.

For many consumers of these ratings systems, it would be helpful to try a less subjective system.

Suggestion

How about something like the following? Sure, there’s still plenty of room to improve verbiage and refine names and descriptions more. But a step forward from the purely subjective systems being used.

  • (0) None – Has no knowledge of a topic. May recognize the name of a skill or feature but doesn’t have a description.

  • (1) Knows About – Is aware of a topic, but doesn’t have practical, usable skill with it yet.

  • (2) Functional User – Have used the skill, feature, or discipline and can apply it in practical scenarios.

  • (3) Advanced User – Have used the skill, feature, or discipline extensively and can help others applying the skill.

  • (4) Expert User – Experienced in all aspects of the skill or feature, use the skill, and are able to teach or train others to use the skill.

I know, I know… you’re looking at that numbering system and thinking “a developer came up with this” because it starts with zero. Well, yes and no. I left it at “zero-based” because if you’re at the bottom of the rating scale, you have zero knowledge of that topic, subject, product, etc. It’s something we can discuss. Smile 

In my opinion, there’s good clarity between 0, 1, and 2. Between 2, 3, and 4 though, may still need some clarification.

Questions and Feedback

  • I’ve been working independently for a while now, are organizations still doing these “spreadsheet” assessments?
  • What have other folks seen out there? Systems that work or have positive components. 
    (I mean,  you can tell me about systems that don’t work too, but that’ll just be for the laugh…)
  • Does the suggested system make sense?
  • Is the system non-subjective enough to make a difference in value of responses?
  • What do or don’t you like about it?

I’d love to hear your feedback in Comments, on Twitter, via email. Whatever works.

Thanks!

References and Notes

Representing Events in Microsoft SharePoint – Collision between Modern and Functional

Background

There are a number of use cases for having visibility to one or more calendars in SharePoint intranet pages – calendars or events lists where a small groups of folks maintain the list of events and a large group consumes the info.

What are the recommendation on how to achieve this?

Calendars in an intranet. That’s the main detail being considered here. How big of a deal is it?
(No really, I’m curious, please let me know in the comments.)

Initial Thoughts and Letdowns

When it comes to the data, Outlook or Exchange handle dates and events best. However, the only surfacing of data between Exchange and SharePoint is the Group Calendar web part. Group Calendars allow everyone to see it, but also allow anyone to add, edit, and delete from the calendar. Not what we want.

SharePoint has historically had an Events list, that also does a good job of managing events – including All-day and Recurring event capabilities. A SharePoint list has list permissions that allow it to be configured with certain editors and certain viewers. However, the only way to surface the calendar view of this list is using a “classic experience” with the functionality we want but with a very dated interface that not only clashes with SharePoint’s modern look, but is only available on a modern page by embedding the view using an iframe. No web part available.

When using the “new experience” of the Events list, there is a new Calendar view type.

showlist

While this calendar looks great in the modern page, it currently seems to be buggy, does not carry through useful features of the classic view like overlays, has issues with filtering items, and does not currently work with the List View web part (but can be displayed with an iframe embed similar to the classic view). Some of these issues may be resolved with a reported update rolling out “soon” (September CY2021).

NOTE: The calendar view for modern lists isn’t just for event-like lists (which is what this post is focused on). The view can be used for *any* list type with a date column and in many cases is a really nice stop forward for those lists.

A bigger problem with the new experience and the Events list is that when using the new experience the All-day and recurring capabilities are broken. These properties and functionality do not show up in forms, though the fields still exist in the list. To make matters more confusing, while in the new experience, click ‘New’ and get the New item form. The form does not show the All Day Event or Recurrence fields, but if you edit the form, both fields are listed and checked as if they should be visible. Not cool for users or power users…

My guess is that this may be happening because of the integration of Microsoft Lists with the SharePoint interface and that Microsoft Lists do not seem to be able to handle these features either – creating a bit of an inconsistency in the interface. If you create a Microsoft List, you can create Start Date and End Date columns and align them with the new Calendar view, but there doesn’t seem to be a capacity to handle other date/event specific functionality that was available with the classic Events list.

SharePoint does also offer a Events web part, which attaches to the Events list. Rather than displaying in a traditional calendar view, the web part offers two different ‘tile’ views – following that little UX trend. While it may be a change for users, the web parts are a nice offering and definitely has its place within the intranet, highlighting upcoming events rather than leaving users to sort through a calendar view. Clicking on events also leads to a few special pages: Events.aspx and Event.aspx that are clean and easy to read. They also DO respect the event All-day and recurrence feature – which is good, but inconsistent with the modern calendar view mentioned above.

With that, Events appear to be at a bit of a crossroads – with some messy collisions – between classic and new/modern functionality that I hope Microsoft will clean up soon.

Conclusion for now

For now, the best solution seems to be continuing to use the Events list as long as it is available, adding the Events web part to the toolbox (previously only used calendar views), and embedding a calendar view until an updated List View web part comes along. It seems like there are a few “broken windows” here that I hope Microsoft repairs soon. A functional calendar view web part will take a nice step or two forward. Knowing what the plans are for Microsoft List support for events would also be nice.

Am I missing some critical feature or capability that solves these needs? Does the enterprise have have these calendar/event requirements?

What are you using in your intranet?

Questions

  • What is the Microsoft roadmap for Events going forward?
  • Events lists are shown as “Classic” features.
    • Will they continue to be supported?
    • Is there a timeline for support, replacement, or deprecation?
  • Will events be supported in Microsoft Lists?
    • You can create a list with start date and end dates, but no “Recurrence” or “All Day” functionality.

References

Microsoft Lists – Broken Home Page

Has anyone else experienced this?

When going to Microsoft Lists – both via the browser and the app, the page that displays my Favorites and Recent Lists errors out with the following:

MyLists

Fortunately, there is one workaround I’ve been able to use for the short term, going back to the Office home page (www.office.com) that displays all Office files including your Lists.

Also of note: I can still create and use lists just fine.

It would be nice, however to have my Lists page up and running. Please let me know if you’ve encountered this in your tenant and/or found any resolution. I’d love to get more info on what a root cause might be, if there are other repercussions, how to resolve it, etc.

Thanks!

Modern SharePoint Page Approval with Power Automate: Message Optional

Overview

The current iteration of page approvals in SharePoint Online using Modern pages and news is handled by Power Automate – and the integration is pretty slick. Kudos to the Microsoft teams responsible for it (SharePoint + Power Automate).

Approval Flow

Once an approval flow has been configured and a user submits a page, the user is prompted by the following panel:

Approval Panel

Note here that the Message field is required. In many cases, this is fine. There are some circumstances however where site owners may want to make the Message field optional.

The Quick Steps

Without getting into all the nitty gritty, here’s how it’s done (at least one approach):

  1. Go into Power Automate and open the approval flow
  2. On the first step of the flow, expand the “For a selected item” step
  3. For the “Message” property, select the menu (three dots) button and select “Make the field optional”)
    Flow Field Optional
  4. Expand the scope (mine is called “Scope 2”), and the “Start and approval” step
    Approval Details
  5. Click on the “Details” expression (circled above) – which opens the panel for updates
    Approval Expression
  6. Update the expression to include a question mark (“?”) after “triggerBody()” and before “[‘text’]”.
    Expression Text
  7. Click “Update” (see above)
  8. Save the flow, and test

When an approval is submitted, the Message field in the panel should now show as “not required” – no asterisk should be visible. The panel should allow users to leave the field blank and “Submit” the page for approval without error.

Not Required

The Details

One example I’ve seen where this is applicable is a site where there is a content management team that does a significant amount of the page creation, but also has folks outside the normal content team that submit content from time to time. Approval is needed. When the main content team is creating pages – they want to get through it and keep moving. The Message field turns into a “junk” field, they keyboard smash or put some useless text in the field in order to submit the page. This is irritating for users and inserts bad/silly data into the system. Rather than remove the field outright, we’d still like to have it available when needed – by folks outside the team, for example.  

Let’s review how this works. Open up the flow. Then expand the “For a selected item” step (Step 3 above).

Changing the Message field to “Make the field optional” seems pretty straight-forward. It will even work for some flows. But by itself this change will not work for all scenarios. The flow will fail when the Message field is left blank because later in the flow a step attempts to use the text IN the field. When that text is blank, the flow fails. 

If you run/test the flow with no Message text, you can open the failed instance of the flow to see where the error occurred. The scope will show an indication that something is wrong. When you expand the scope you can see the error on the “Start an approval” step. This flow fail is also followed up by a “Something went wrong…”  email from Microsoft Flow.

Broken Flow

Looking at the error message, there’s something wrong with ‘text’, which looks like it’s pointing back to the Message field we changed.

If we test run the flow again, and put text in the message, the flow works fine.

Looking at steps 4-6 above, you can see where the additional change needs to be made – adding a question mark to the expression. This syntax (the “?”) allows the expression to evaluate the Message field – [‘text’] – as Null when it is empty. Before we added the question mark the expression didn’t know what to do with a blank Message field and failed the flow. 

Note: I haven’t been able to find official documentation anywhere on what the “?” syntax is within expressions, how to use it, when to use it, etc. Maybe my search skills are falling off. If you find something from Microsoft, let me know and I’ll update this post and references for it. Until then I’ll include what I did find below.

References

Paul Stork has the most information I’ve seen on the use of the question mark (?)  thus far as seen in this community post:
Solved: Use of Question Mark(?) in expressions – Power Platform Community (microsoft.com) 

Another blog that references the question mark with regards to a Power Automate expression
Power Automate – how do we check if a property exists in the object? | It Ain’t Boring (itaintboring.com)

SPS Events Shutting Down… Events WILL Continue

Overview

  • SPS Events, the organization behind many SharePoint Saturdays, is coming to an end
  • The events, however, will continue – as “SharePoint Saturdays” or under new and evolving names (like ours, see below)  

Details

Last week – Friday August 20th, 2021 – the SPS Events crew posted announcements on their Facebook page and web site that the SPS Events entity as we know it will be shutting down this coming Fall. Check out the details here: 

This is certainly the end of an era – the end of an amazing legacy built and managed by awesome people. Eric Harlan, Susan Lennon, and a ton of folks and organizations behind and alongside them created a community like no other.

SPS Events did a LOT, but two things for me stood out:

They maintained a “master schedule” for our community of events. This was, and is, hugely important and useful. It helped with visibility to folks in a city, in a region, in a geography to find local events. It helped speakers and vendors with locating events outside of their usual regions. It also helped prevent overlaps and confusion in some cases. All of this was good for the community. I’m not sure where this master schedule will be maintained going forward. With SPS events alone this was a pretty big list. Now with SharePoint Saturdays evolving (as we are) to different names, to physical events, virtual events, hybrid events, etc. it seems like a challenge without an owner at the moment.

They also provided a platform, a framework, and support for new and smaller events to get a foothold when they needed it. This is such an important part of our community. Helping new folks, new speakers, new organizers, etc. across the board where and when we can is a cornerstone of what we do. I’ve never seen it in any community – technical or otherwise – as much as I have in our SharePoint, Office, Microsoft community.

There will likely be a lot of chatter and reminiscing about SPS Events this week. A lot of us have “grown up” through this community, found our paths, built careers, and so much more. A huge thanks to Eric, Susan, and all who have been and continue to be a part of this community. I count myself lucky to be a small part of it in our little corner of the world.

SPSTC –> M365TC

We’ve already had folks reach out and want to get ahead of the rest of it… We aren’t going away. Our local organization here in the Twin Cities, Minnesota, the Upper Midwest – is still here. As we mentioned a few months ago, we’re in the midst of renaming and rebranding. That rebranding effort will continue and we do plan on returning to events as you’ve known them as soon as is practical with the pandemic and all the repercussions of it.

Latest on events

I’ve been holding out hope for a Fall/Winter event in 2021, but between COVID’s Delta variant and venue limitations, an event similar to what we normally do twice a year is not looking likely this year. Normandale is closed to events through 2021. My interpretation of this is that we will look to early 2022 for a bigger event – with all the usual “it depends” that comes with pandemic details. We might look at doing some smaller events in the meantime, but that is very TBD.

Modern SharePoint + Power Automate Approval with Select User Auto-Approve

Background

I’m still a Power Automate newb. Lots of you have been working with these for years now. I’m legit curious what silly things I’m doing, what other approach I should be taking, what best practices to integrate, etc.

So let me have it… in the comments here, in Twitter, whatever. I’m waiting.

Overview

Power Automate backed approval flows for a SharePoint intranet site on the Site Pages library. Pretty slick and polished as a replacement for SharePoint workflows and nice template to look at for Automate newbs. Kudos Microsoft folks.

Now, however, I’d like to have approvals on my site, but also have them bypassed for certain users – folks that own the site, do the majority of content generation, etc. I still want the process in place because I have other content contributors that I still want to manage.

So, we have an out of the box page approval flow that I want to tweak.

It sounds potentially easy, but we all know better. There will be some pain. And there is. But we can work with it.

What I did

The out of box page approval flow looks as follows:
OOB Approval Flow

With the exception of a few new variables I added, all changes were limited to the “Scope 2” step. When I was finished, the top level view looked like this:
(Yes, I should be consistent with my naming – I’ll clean that up)

Final Approval Flow

I’ll walk through the variables shown above as we go.

Who Gets Auto-Approved

This is a topic that could be debated in terms of the best way to manage the list or folks that get auto-approved. Should you use a list, an Azure Group, a SharePoint Group, or something else? For simplicity’s sake, I’m going with a list. It’s the easiest to maintain visibility and control at the team level without needing to work with a security team every time we need to change a group. I’m also pretty confident that Automate can get to the data I need in a list. I’m not yet sure about the other approaches. Obviously a decision like this may vary org to org. For this example, we’re using a list.

I created a SharePoint list and called it “AutoApproveNews”. Yep, I’m old school and don’t like spaces in my list names. I’m not messing with the Title field right now, so just left it alone and required. It’ll need to be filled with rubbish for now. The only column I added to the list was AutoApproved as a Person or Group field displaying the Name. Yes, the name might not be unique… so something to look at later to seal the process up a bit more. Using the email address is probably a nicer, more unique, approach but I haven’t tried that variation yet.

I didn’t do anything special with permissions for the list while validating this concept, but there are a few ground rules you’d likely want to follow.

  • Make sure whatever connection you’re using to SharePoint from Automate has access to the list.
  • Lock down the list to the folks that manage content so random users can’t just add themselves.
  • I also found it useful to remove the list from navigation. Don’t like cluttering things up unnecessarily.

First note on variables

The approach I’m using is that I’m going to get the name of the person submitting the news article, iterate through my list of folks that get auto-approved, and trip a flag that indicates I found a match.

So with that, AutoApproveFlag is created and set to false.

NewsSubmitter is set to the name of the person that added the new news article or page from the “For a selected item” step.
Submit Variable

The other variables are used in the text of the email, so you can fill in whatever fits for you. Here’s what I did for now:
Variable Initialize

You’ll see where they fit in down below.

New Steps

Using as much of the default flow as possible.

  1. After the “Set content approval status – Pending” add a step to “get items from” a SharePoint list and point it to the AutoApprovedNews list we just created.
  2. Add a “Apply to each” step to iterate through the SharePoint list data.
    Add a condition where if a match (comparing the AutoApproved field to the NewsSubmitter variable) is found, set the AutoApproveFlag variable to true.
  3. Add a Condition step. Test for the value of variable AutoApproveFlag – if not true (no matches found), then start the flow approval. I added the condition step and then dragged the existing “Start an approval” step into the No condition.

    Note: Because there will be some conditions where the Approval doesn’t exist, I need to change some of the email steps later in the flow because they use properties of the Approval in their email content – hence the other two variables that were created: strApprover and strComment. (I should be consistent with variable naming, started thinking about that after I was underway – cleanup for later)

  4. The default flow has a Condition step that waits for the approval response. I didn’t see a way to change the condition the way I wanted, so I created a new Condition step to check for an approval response OR check if the AutoApprovedFlag variable was set to true.

    Note: DO NOT delete the original Condition step until after #5 below and you’ve moved/copied the steps from the original to the replacement.

    Original:
    Original approval

    Replacement:
    New Approval

  5. Move or copy the steps in the yes and no conditions to the new condition step (#4 above). I was able to drag and drop some, but also needed to use the preview functionality of copying steps to the clipboard and then used the “Add an action” feature to add from clipboard.
  6. Now you can delete the original Condition you just copied the steps from.
  7. In order to clean up the emails sent later, I needed to replace Approval properties in the email content with variables that would work both when approvals were automatic and manual. In order to make these work, I needed to add a Condition step and Set Variable steps.

    With new Condition rules, moved steps, and an additional Condition step, the flow looks like this:
    After Moves

    Setting the variables as follows:
    Set Approval Vars

  8. Finally, we need to update the email content to replace the Approval properties with variables. Only the “Send email notification” steps (both “Yes” and “No” outcomes) under the scheduling condition (“Check if content has been schedule or not”) need to be updated.

    These are the ones you’re changing:
    Which email steps

    From this:
    TextBefore

    To this:
    TextVariables

  9. After we’re all done, Scope 2 looks like this:
    Scope2

I think that’s everything. I’ll update if I find additional details.

Recap, Summary

It works. What am I missing? What should I have done different?

Bring it!!

References and stuff

Thanks to Mark Rackley for a few pointers…