HR Appraisal Improvements Required


I would like to propose (and partly sponsor) some improvements to the appraisals feature so it becomes more useful to the enterprise. These first few enhancements aim to make ERPNext appraisals match actual appraisal forms by adding sections and also including fields for numerical targets where applicable. Also, we would like to see a link between appraisal objectives and activity types (Timesheet) so that appraisal scores can be automatically calculated based on daily employee activity. Below are the proposed changes. Inputs and suggestions are welcome

Appraisal Sections

Appraisals are hardly ever done with one section only, even in small organisations. We need to add sections in appraisal templates and forms

• The appraisal template could have up to 10 sections (I believe most organizations use 5 or less)
• Each section comprises of Title, Description, and KRA (i.e. Section 1 Title, Section 1 Description, Section 1 KRA, Section 2 Title, Section 2 Description, Section 2 KRA, Section 3 Title… etc)
• The Title, Description, and KRA all need to be mapped from the Appraisal Template to the Appraisal Form
• Only the first section is visible when a new Appraisal Template is opened. There should be an ‘Add New Section’ check-box at the end of each section; when it is checked, the next section’s fields become visible

Appraisal Template Goal Child Table

Appraisal Goals often contain some kind of metrics that employees are expected to achieve

• Add a checkbox field ‘Has Numerical Target’
• Add a float field ‘Numerical Target (Daily)’. This appears only when the ‘Has Numerical Target’ checkbox is ticked
• Change label of the table to ‘Objectives’ rather than ‘Goals’

Appraisal Goal Child Table

• Change the label of kra field from ‘Goal’ to ‘Assessment Area’
• Add a read-only checkbox field ‘Has Numerical Target’ and map the ‘Has Numerical Target’ field from the Appraisal Template Goal Child Table
• Add a read-only float field ‘Numerical Target’. The value of this field is calculated by multiplying the value of the ‘Numerical Target (Daily)’ field by the number of working days between the ‘Start Date’ and ‘End Date’
• Add a float field ‘Target Achieved’. This is where the figure achieved so far by the employee during the period is entered
• For Appraisal Goals/Objectives where the ‘Has Numerical Target’ field is checked, the Score Earned is automatically calculated as follows: (Target Achieved / Numerical Target) * 5 though it is important to note that maximum score cannot exceed 5 even when Target Achieved is greater than Numerical Target
• Add a field for ‘Self Score (0-5)’. This is a field for the Employee to score him/her self. It is usually only used for record purposes and doesn’t affect the overall score

Appraisal Form

• Each section should have a Section Total field (i.e. Section 1 Total, Section 2 Total, Section 3 Total… etc)
• Each section should have a Weightage(%) field (i.e. Section 1 Weightage(%), Section 2 Weightage(%)… etc)
• The ‘Total Score (Out of 5)’ field should be the average of all Section Total fields based on weightage
• Add a ‘Total Score %’ field that represents the Total Score (Out of 5) as a percentage

Timesheet linked to Appraisals

For most Appraisal Objectives related to regular employee activities, it’s convenient and much more accurate for the objectives achieved to be tracked via Timesheets

Employee Form

• Add a link field ‘Appraisal Template’ where the HR user can specify the template for the employee

Appraisal Template Goal Child Table

• Add a checkbox field ‘Allow in Timesheet’
• Add a link field ‘Activity Type’. This allows the user to set the specific Activity Type associated with the KRA and appears only if ‘Allow in Timesheet’ is selected

Timesheet Detail Child Table

• Add a section in Timesheet Detail table for ‘Appraisal Details’
• Add a link field in Appraisal Details section for ‘Appraisal Template’
• Add a field ‘KRA’ where the user can select a KRA from the previously selected Appraisal Template
• Add a float field ‘Self Score (0-5)’ where the user can rate themselves between 0 and 5
• Add a float field ‘Target Achieved’ which is only visible when the KRA selected is one that has numerical target. In this case, the ‘Self Score (0-5)’ field should be hidden

Timesheet Form

• Add a button ‘Pull from Appraisal Template’ below the Timesheet Details table. Clicking on this button should automatically populate the table with all KRAs from the employee’s appraisal template where ‘Allow in Timesheet’ is ticked. Activity Type should be as defined in the Appraisal Template Goal child table

Appraisal Form

• Add a button ‘Pull Timesheet Values’. Clicking on this button should automatically set values in the ‘Self Score (0-5)’ and ‘Target Achieved’ fields respectively by calculating the average values in the ‘Self Score (0-5)’ field for all KRAs in submitted Timesheets where the ‘End Time’ of the activity falls within the Appraisal Period. For KRAs that have numerical targets, the sum of values in the ‘Target Achieved’ field should be calculated instead.


This can go here!