One Stop Shopping Plus Mail Order

imageA few weeks ago, I received an email about an old post about managing a walking contest in SharePoint. Ironically, we are preparing to kick off the 2014 version of that contest in about 2 weeks and once again, we are managing it in SharePoint. I like to use these little side projects to demonstrate what SharePoint can do out-of-the-box. Some might ask “why focus on out-of-the-box? SharePoint can be so much more.

Their question is not quite correct and I am lying just a little bit.

The problem with their question is that “SharePoint can be made to be so much more” but the making can take a lot of time.

The lie that I’ve told is a lie of omission. I didn’t tell you that my box is bigger than Microsoft’s box. My box includes things like HarePoint Workflow Extensions and Nintex Workflows. HarePoint’s extensions add some very cool features to SharePoint Designer workflows and Nintex, well Nintex Workflows are like a slice of SharePoint Heaven here on Earth.

So, truth be told, I like to show people what we can do very quickly in SharePoint with the tools that we have available to us. That’s important for a reason that most IT departments don’t consider often enough.

Sometimes, people don’t ask for things because they think those things will be hard to build or expensive or that they will take too long.

They aren’t trying to save my time or my budget; they’re just trying to avoid being told “no, you can’t have that.

In the 2014 version of our SharePoint-driven walking contest, we have added two new features. Both are aimed at improving the user experience and both came at the request of my new young colleague Stacy. Stacy is not only the architect on this project, she’s the user. She’s managing the walking contest and she’s building the site with some help from me.

For those of you who are unfamiliar with a walking contest, it’s pretty much what you would imagine:

  • Our company is divided into teams.
  • Each person tracks and records their steps each day during the contest.
  • At the end of the contest, the team with the most steps wins a team prize and the person with the overall highest number of steps wins an individual prize.

Stacy wanted to make two improvements to the accounting process for the contest. She wanted to add options for mobile entry and she wanted a dashboard of sorts for reporting progress.

Mobile entry was easy but, again, it uses a few tricks from our bigger box. You can send your entry into a SharePoint Remote Entry library by including the subject line “10-11-2014 8,996” i.e. the date and the number of steps. A SharePoint Designer workflow, aided by HarePoint’s Regular Expression actions parses the subject line and adds the steps to your step count. A second workflow adds your step count to your team’s total.

We could do all the processing in one step, but I like breaking things into small chunks. That is a carryover from my history of coding in Smalltalk, but it’s a good practice for SharePoint. Small workflows are easier to test and they are easier to “debug” since there really isn’t a “debugger” available in SharePoint.

Employees with iPhones can also easily enter their steps via a mobile view of the Steps Entry form. Actually, anybody could do this, but “iPhone” is linked with “easy” because our MaaS360 mobile device management software allows us to push that mobile form through our firewall without the need for a VPN connection (which people hate to make on their phones).

Finally, we needed to build that dashboard, but we decided to make it functional instead of just informative – that’s where the “one stop shopping” comes from. We started with a Web Part Page and we added an Announcement part and an Instructions part in those top-of-the-page whole width zones. Then we added three useful parts. On the left, we have “My Steps” which is a view of the Steps list filtered on the current user. In the center, we added a view of Team Status that shows the current ranking of teams and on the right; we added a simple entry form for steps.

image

I have to admit, this is the first time I have ever put an entry form on a dashboard. It works. Having the entry form on the page makes this page the only thing people actually have to look at. My Steps, My Team and, as I look at my steps and realize that I forgot to enter yesterday’s value, I can do it without leaving the page.

Stacy’s homework assignment is to add a chart to graphically display some of these statistics and to make the page a little prettier. Mine is to start walking.

SharePoint Joinery

clip_image002One of the challenging things about working with wood is learning all of the different ways that wood can be joined together. As I said a few weeks ago, it’s not like you can weld it. Joinery is fascinating, labor intensive and meticulous work. The goal is to maximize the surface area for glue and if possible, include a mechanical connection for added strength. I know how to make almost every type of joint, but sometimes I cheat.

If you look at the picture to the right, you will see that it features an interesting joint. With a little fancy cutting, I can create the illusion of a door and a face frame in what is really a solid panel. But, if you look down and to the right, you’ll see a pocket screw.

Pocket screws are a wonderful little cheat. No fancy cutting involved. Drill a hole by running a special kind of bit through a jig, add a bit of glue and whirr whirr whirr, screw the thing together. Fast, easy and ridiculously strong, they only feel like cheating to the guy who knows how to cut the other kind of joints. Email is the pocket screw of SharePoint (see, I do know which blog I’m writing).

Apparently, the fitness freaks in our Human Resources department want us to get healthy. We are going to have an exercise contest where we will form teams, count steps and track calories and the winners will get something like a gift certificate at Dick’s Sporting Goods. Personally, I think that’s like dieting in order to win a case of Tofu, but that’s beside the point. The point is, they want to track this all in SharePoint, which is very cool. Even better, the young woman running the contest wants to build the tracking solution herself. Now that’s exercise I can support.

She will be using a couple of custom lists, some connecting gear and a widget or two:

Team Members – I.E. those of us inclined to walk, run, bike, swim or climb our way to a healthy heart.

Teams – Because some people need a better reason to exercise than living longer. For those people, we introduce peer pressure and the fear of letting your friends down.

Steps – Who, when and how many.

Workflows – She has one that enrolls a person onto a team, and one that adds an individual’s steps to the team total.

Widget – Sooner or later, she’s going to want to make this pretty.

Before we get to making this pretty, she wants to make it easy. I like that. SharePoint should be easy. The problem is that she wants us to walk every day! If we have walk on Saturday and Sunday, we have to have a way to record the steps. We have several:

VPN – Fire up your laptop, connect with VPN, go to the SharePoint site and enter your steps.

Mobile Browser – She’s going to make a nice looking mobile version of the entry page and we will publish that through the MaaS 360 browser. That way, people with iPhones or iPads can enter their steps without having to log in. That’s easy.

Email – Email? Yes, email. SharePoint can receive email. SharePoint workflows can “read” emails and I can enter my steps in a dirt-simple process.

To: TheSharePointLibraryAcceptingSteps@ourDomain.com
From: Me
Subject: Steps 06/01/2014 12,500

I’m going to walk a lot in June.

clip_image004That’s easy to do, and with the help of those HarePoint Extensions for SharePoint workflows, it will be easy to build. HarePoint is like the jig that helps me angle those pocket screws into position.

We use email in several processes where connecting something to SharePoint would otherwise require the equivalent of a hand-cut dovetail. For example, we have a process where SharePoint needs to know about a status change that results from a SQL Server stored procedure. Connecting SharePoint to SQL Server is possible, but running workflows on External Lists is not – the data isn’t in SharePoint. Fortunately, SQL Server can send SharePoint an email and we can read that email.

Of course, SharePoint can send email too. So, if one of our employees doesn’t include enough information on the subject line of that email, our workflow can write them back:

Yo, Stepper. We’re thrilled that you’re getting some exercise, but we do need three things to make those steps count. Please include the word ‘step’ (or steps, or Steppenwolf), an mm/dd/yyyy formatted date and the number of steps on the subject line of your email. They can be in any order, but we need all three.

Thanks,
Step counting robot

Sure, there are other ways to connect SharePoint to the rest of the world, but email works well enough in this case. People like email. People understand email. People can send email from almost anywhere using almost any device. Besides, the goal isn’t to show off our SharePoint prowess, the goal is to make life easy. I think I’ll go walk me some steps.