ABC Design

The design to meet our initial requirements needed to fit with the “write once, run everywhere” mantra. It needed to work in Classic, Lightning, and Mobile. It also needed to be easy to customize using just clicks, not code. We came up with a single Object where users grade themselves on 5 different wellness actions completed daily.

The five actions in the base package are:

  • Be Mindful = Say thank you, try to assume the best, smile often, be grateful, compliment others – you know the drill. It will help when life throws curveballs.
  • Break a Sweat = 20 minutes minimum – get your heart rate up: run, walk, bike, take the stairs (a few times) – whatever works best for you.
  • Hydrate = Drink water – the daily recommended amount. Set funny reminders, finish a water bottle before eating or reaching for that next cup of coffee.
  • Hygiene = We don’t care if you washed behind your ears but wash those hands; often and with soap.
  • Stand up, Stretch = Stand up, reach for the sky, swing your legs around, do 1 exercise for 60 seconds once an hour throughout your workday. Keep the blood flowing. Don’t forget to breathe.

For each action, users grade themselves on how they did throughout the course of the day. They can update scorecards for the current day or yesterday, but no revising the past or predicting the future!

The grades correlate to points:

  • A = 4 points = Crushed it. I am Amazing.
  • B = 3 points = Solid performance. I could do a little Better but I can’t be perfect every day.
  • C = 2 points = Crap, today wasn’t my best. It’s not for lack of desire. I will do better.
  • Not Today = 1 point = Not me, not today. Tomorrow’s a new day.

The points are totaled daily throughout the week to generate a leaderboard by cohort. Our thinking is you celebrate and reward participants with weekly competitions. You know your team best so we let you determine the weekly rewards. Don’t need another task? We get it – no heavy lifting needed. Here are some suggestions: extra PTO, gift cards to coffee shops, Amazon, popular lunch spots, wellness money.

All the reports and dashboards use “This Week” date filters to automatically run contests.

geek time: technical details

  1. ABC Grade Picklist Set with A-X as options, relabeled X to be “Not Today”.
  2. Custom Object named ABC Wellness (later relabeled to ABC Actions) with:
    • Date defaulting to TODAY()
    • Action1..5 as picklists of type ABC Grade for the 5 metrics (labels updated to names and help balloons of each wellness action)
    • Action1..5Num as formulas translating the pick list values to score numbers for generating reports (updated labels to match with # instead of Num)
    • Points as formula totaling up Action1..5Num fields for easier reporting
    • Autonumbered Id (don’t you hate not being able to have formula record names?)
    • Wellness Name is a HYPERLINK formula to replace looking at autonumbered Ids
    • No Dup ID is a unique text field updated by the Process Builder process to prevent people from creating more than 1 record for themselves for a single day.
  3. Three Validation Rules enforce no creating/editing records with a Date earlier than yesterday, later than today, or on a weekend. These can be deactivated to match implementation differences.
  4. Process Builder runs ABC No Dup ID process to create a unique combination of Owner.Id & TEXT(Date__c) whenever a record is created or updated. Enforces only 1 record per user per day.
  5. Other ABC Wellness Object Properties
    • Reorganized Page Layout fields based on user feedback.
    • Removed all the quick actions for Classic and Skinnied down Lightning Experience Actions for simplicity.
    • Created Lighting Record Page to remove related lists and add a progress chart for motivation. This page can be updated with rich text to provide additional instructions as needed.
    • Setup Search Layouts and Tab Layouts (Classic) so Recent views don’t suck.
  6. ABC Wellness Tab, List Views, App, Lighting Record Page and App Page
    • Created the ABC Essentials app in Classic first so it was visible in App Picker. Upgraded it forced changing the name, but you can relabel it back afterward.
    • Updated List Views to use Wellness Name instead of Wellness ID as the link field.
    • Added logos and and other descriptive rich text to App, Lightning Record and App Pages.
  7. Public Groups, Report / Dashboard Folders, and Reports / Dashboards
    • ABC Users and ABC Admin Public Groups
    • ABC Wellness folders under Reports and Dashboards, viewable by ABC Users group, Editable by ABC Admin group.
  8. ABC Essentials Permission Set for deploying / activating the App for users
    • Turn on most of the Dashboard related System permissions.
    • Access to the ABC Wellness Object, not view all, respect Org Wide Sharing rules (if any).
  9. Classic version of Dashboard to show on Classic Home tab
    • Trouble getting Lightning Dashboard to show on Class Home tab, so recreated Report-style elements and everything worked. Maintenance required in two places unfortunately.
  10. ABC Essentials UNMANAGED Package created to bundle all this together and facilitate moving it into ANY org. Be smart, always use a Sandbox first to assess conflicts. Managed version coming soon and will be the basis for Lightning-only enhancements. We’ll see how much time I have…

wanna see more?