Family Medical Leave Act Application Exploration

Published
2011-04-22 14:04
Written by

Our existing system for managing the Family Medical Leave Act (FMLA) tracking requirements has worked well for several years. With new state level requirements being issued the lack of flexibility of our current system became apparent. Looking at vendor solutions appeared to stick us with extremely robust applications whereas we need functionality for just a few state and federal laws.

 

CiviCRM had cropped up several times as a potential application to use for traditional CRM roles but during a brainstorming session on our new FMLA app, my fellow developer said, "It seems like CiviCRM might be able to do this." The proverbial light bulbs shattered above our heads as we started mapping existing civi modules and components to our application requirements.

  • Track employees FMLA types -> CiviCase
  • Follow a workflow for when an employee goes on leave ->CiviCase Activity Sets
  • Send letters based on the type of leave occurence ->CiviMail with Custom Tokens and the Smarty Template System
  • Create Reports based on FMLA types -> CiviReports

A stickler was how to track hours as there are several types of FMLA leave occurrences that need to be tracked and we need to be able to aggregate the hours so as to know when people have used up the hours allocated.

Until yesterday, 4/21/2011 nothing quite made sense to me. Custom Data seemed appropriate but there was no way to update several users at once. Plus custom data that can have multiple occurrences is not exposed to the CiviProfile. Culling through the forums I saw people had used Activities to track hours. I created an Acitivty Set that named Leave Hours, threw in a few of the leave types and was almost there. What is great about doing it this way is that it will allow any organization in any state to implement their specific leave types with little trouble.

Running a search "Find Activities" with the "Leave Hours" activity type selected generates a search result that allows you to do a Batch Update from Profile Action. By creating an Activity Profile for Leave Hours you can do a bulk update on all Leave Hours. I am pretty sure I can create an Activity Set within the Case XML files that will allow for blank Leave Hour activities to be created when a case is created. 

Another hurdle was finding a way to use the Print PDF Letter Action from the search results for multiple cases. The default behavior is to group the results by individual contact_id so that you only see one result per person. I needed to see a result for each case that is active. The ability to create custom searches based on mySQL queries solved that problem.

So far, the community, especially dlobo, has really helped support me in exploring CiviCRM as the basis for this FMLA application. I am looking into field validation next, but will be moving forward with creating our new app by leveraging CiviCRM. We still need to nail down the workflow and continue exploring but development should move ahead rapidly.

Keep up the great work CiviCRM team!

 

Comments

Interesting usage of case, nice idea.

 

Have you published your custom search as an extension ?

 

X+