Attendance Tracker on Salesforce NPSP


The client's name is Baan Dek Foundation from Thailand. Baan Dek Foundation is a Thai registered foundation which aims to foster children's education, health, and safety in Thailand


The client was using a form building app for building forms in Salesforce to track the attendance of the contacts who attend training sessions run by Baan Dek Foundation.

The client records these attendances in two steps with the help of an app. In the first step, the training administrator adds the sessions and then adds participant records to it. The challenge was that they wanted to do all this on a single screen - session on the top of the page, attendance list at the bottom, and a single submit button. The goal was to make the screen for creating sessions user friendly to increase agent productivity.


As per the requirement, the client wanted an app that worked on both Desktop and Mobile.
We created a Lightning Component which tracks the attendance of students.

  1. In the first step, user needs to select the Session Type. On the basis of session type, we show the program list.
  2. Users can select any program from the list.
  3. After selecting the program, with the help of different filters we show the contact list with a checkbox and session field.
  4. Users just need to fill the session field and select the available contact in the session and submit it.
  5. The session and attendance records are created.

Screenshot given below

  1. Select Session type

    Employee availability component case object

  2. On the Basis of selected session type, dynamically show different fields

    Employee availability component case object

If we select Session Type - Community it will show Community And Program
If we select Session Type - Institution it will show Institution And Program
If we select Session Type - Program it will Program
If we select Session Type - Program Cohort it will show Program Cohort And Program

After selecting these fields and clicking next Screen, different session fields and filtered contacts are displayed.
The user can select single or multiple contact with the help of checkbox and click submit to create participation. Participation is a junction between session and Contact and captures attendance information.

Employee availability component case object


The custom Lightning component allowed the client to build an attendance tracking session that allows them to manage sessions, scheduled and attendance of the sessions all within the Salesforce platform. This can be used by any NonProfit that needs to manage training sessions within Salesforce.