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
ABC GradePicklist Set with A-X as options, relabeled X to be “Not Today”.
- Custom Object named
ABC Wellness(later relabeled to ABC Actions) with:
Datedefaulting to TODAY()
Action1..5as picklists of type
ABC Gradefor the 5 metrics (labels updated to names and help balloons of each wellness action)
Action1..5Numas formulas translating the pick list values to score numbers for generating reports (updated labels to match with # instead of Num)
Pointsas formula totaling up
Action1..5Numfields for easier reporting
- Autonumbered Id (don’t you hate not being able to have formula record names?)
Wellness Nameis a HYPERLINK formula to replace looking at autonumbered Ids
No Dup IDis 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.
- Three Validation Rules enforce no creating/editing records with a
Dateearlier than yesterday, later than today, or on a weekend. These can be deactivated to match implementation differences.
- 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.
ABC WellnessObject 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.
ABC WellnessTab, List Views, App, Lighting Record Page and App Page
- Created the
ABC Essentialsapp 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.
- Created the
- Public Groups, Report / Dashboard Folders, and Reports / Dashboards
ABC AdminPublic Groups
ABC Wellnessfolders under Reports and Dashboards, viewable by
ABC Usersgroup, Editable by
ABC EssentialsPermission Set for deploying / activating the App for users
- Turn on most of the Dashboard related System permissions.
- Access to the
ABC WellnessObject, not view all, respect Org Wide Sharing rules (if any).
- 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.
ABC EssentialsUNMANAGED 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?
- Learn more about the design meeting the Initial Requirements.
- Download and Install the Initial Requirements version of the App into your existing Salesforce.com org.
- Review FAQs about the project.
- Meet the team who created ABC Essentials.
- Contact me about Future Enhancements (still free, time permitting).