Assign Training From Hr
Assign Training from HR
HR and L&D teams assign courses to employees beyond automatic onboarding enrollment using LMS Training Assignment, desk enrollment tools, and the whitelisted API assign_mandatory_training. This guide covers who may assign, how assignments create LMS Enrollment rows, due dates, team dashboards, and coordination with Smooth HR roles and compliance workflows.
Assignments bridge People records (via User email) and onboarding auto-enroll. Completed assignments still require HR compliance handoff per Compliance Vs Lms Certificates.
Help URL: Assign Training From Hr
Roles reference: User Roles & Permissions
Table of Contents
- Overview
- Who can assign
- LMS Training Assignment fields
- API: assign_mandatory_training
- Desk workflow
- Learner view
- Manager and HR dashboards
- Relationship to batches and live classes
- Compliance coordination
- Troubleshooting
- Related guides
Overview
| Method | Best for |
|---|---|
| Auto onboarding hook | Baseline mandatory courses for all new hires |
| assign_mandatory_training API | Bulk assign from LMS UI or custom HR desk script |
| Manual LMS Training Assignment | One-off remedial training |
| LMS Enrollment (desk) | L&D enroll without due date tracking |
| LMS Batch Enrollment | Cohort programs with live classes |
LMS Training Assignment tracks:
- Employee (Link to User email)
- Course
- Due Date (required)
- Status: Pending, In Progress, Completed, Overdue
- Assigned By, Completed On
List path: /app/lms-training-assignment
Who can assign
| Role | Create assignments | API access |
|---|---|---|
| System Manager | Yes | Yes |
| Moderator | Yes | Yes |
| HR Manager | Via team APIs (read); assign if granted Moderator | get_team_training_status |
| HR User | No by default | No |
| LMS Student | Read own only | get_my_training_assignments |
assign_mandatory_training calls frappe.only_for(["System Manager", "Moderator"]).
If HR operations need direct assign without Moderator, add role via User Roles & Permissions policy—or delegate assignment to L&D Moderators while HR owns Employee Compliance verification.
LMS Training Assignment fields
| Field | Description |
|---|---|
| Employee | User linked to HR Employee.user_id |
| Course | Published LMS course |
| Due Date | Deadline; scheduler marks Overdue |
| Status | Auto-updated from enrollment progress |
| Assigned By | Defaults to current user |
| Completed On | Set when status → Completed |
| Reminder Sent | Internal flag for email jobs |
Validation prevents duplicate open assignments (same employee + course + Pending/In Progress).
Ensure Employee has LMS Student (Employee Auto Provisioning) before assigning.
API: assign_mandatory_training
Whitelisted method: lms.lms.api.assign_mandatory_training
Parameters:
course— LMS Course nameemployees— JSON list of User emailsdue_date— ISO date string
Behavior per employee:
- Skip if open assignment already exists.
- Create LMS Enrollment if missing.
- Create LMS Training Assignment with due date and assigned_by.
Returns {"assigned": N}.
Use from LMS frontend bulk assign UI or advanced workflow automation (contact Smooth support) triggered by HR workflow (advanced).
Related learner API: get_my_training_assignments — returns open assignments with course title, progress, due date.
Desk workflow
Single assignment
- Go to
/app/lms-training-assignment/new-lms-training-assignment. - Employee — pick User (search employee email).
- Course — select published course.
- Due Date — set per policy (30/60/90 days).
- Save — enrollment created if needed.
Bulk assignment
Use LMS Statistics or course admin tools calling assign_mandatory_training, or export Employee emails from HR reports (People) and paste into bulk dialog.
After role change (promotion to manager), assign new curriculum without re-running Employee Onboarding.
Learner view
Employees see assignments on:
/lmshome widgets (when configured)- Course cards with due badges
- Email reminders before overdue
Progress comes from LMS Enrollment.progress; completing course marks assignment Completed (via training assignment controller).
Direct learners to Onboarding Portal for HR tasks and /lms for training—same login.
Manager and HR dashboards
| API / view | Audience | Data |
|---|---|---|
get_team_training_status |
Moderator, HR Manager, System Manager | Per-user active/completed/overdue counts |
get_advanced_statistics → compliance |
L&D leadership | Mandatory assignment completion rate |
| HR Employee Compliance list | HR compliance | Regulatory status separate from LMS |
Use LMS dashboard for learning operations; use Employee Compliance for regulatory sign-off.
Relationship to batches and live classes
Assignments enroll courses, not batches. For instructor-led programs:
- Create LMS Batch with timetable.
- Add Batch Course rows.
- LMS Batch Enrollment auto-creates course enrollments and adds learners to live class calendar events.
Use assignments for deadline-driven compliance; use batches for scheduled cohort experience.
Compliance coordination
When assigning regulatory courses:
- Create matching Compliance Type in HR if not exists (Employee Compliance).
- Create Employee Compliance row in Pending when assigned (optional proactive step).
- On LMS completion, attach certificate and mark Complete (Compliance Vs Lms Certificates).
Assignment Overdue in LMS does not auto-set HR Non-Compliant—define escalation SOP between HR and managers.
Troubleshooting
| Issue | Fix |
|---|---|
| Permission denied on assign | Grant Moderator or use System Manager |
| Employee not in list | Missing User / LMS Student |
| Assignment created but no portal course | Check course Published |
| Progress stuck | Learner must complete lessons/quizzes |
| HR sees overdue but compliance Complete | Different systems—reconcile dates |
Related guides
- Integration Overview
- Employee Auto-Provisioning
- Onboarding Mandatory Training
- Compliance vs Certificates
- Live Classes
- LMS Settings
- People Overview
- User Roles
- Employee Compliance
- Employee Onboarding
- Performance Overview
Last updated: May 2026
Escalation playbooks
Define tiers when LMS Training Assignment hits Overdue:
| Tier | Days overdue | Action | HR system |
|---|---|---|---|
| 1 | 0–7 | Manager email nudge | — |
| 2 | 8–14 | HR outreach | Note on Employee Onboarding or employee file |
| 3 | 15+ | Compliance flag | Set Employee Compliance In Progress or Non-Compliant per policy |
LMS overdue status alone is operational—translate to HR compliance language for regulators.
Integration with performance cycles
When Performance appraisals include "complete assigned training," managers pull data from get_team_training_status rather than self-attestation. Link appraisal templates to LMS completion exports for audit trail.
Custom desk extensions (advanced)
Organizations may add Client Script on Employee form button Assign training calling assign_mandatory_training with default due date from template rules—keep Moderator permission on API.
Server Script alternative: on Employee department change, enqueue assignment for department-specific course list maintained in custom configuration list.
Document customizations separately from stock integration behavior.
Reporting exports
| Report need | Suggested export |
|---|---|
| All overdue by department | LMS Assignment list + Employee join via User email |
| Completion before start date | Filter assignment Completed + Employee joining date |
| Audit sample | Random 10% Completed with certificate attach verification |
Cross-check Employee Documents folder for PDF presence.
FAQ
Can employees self-enroll to satisfy assignment? If course allows self-enrollment and learner enrolls before assignment, assignment API still creates tracking row when moderator assigns—or mark complete when progress hits 100%.
Duplicate course in batch + assignment? Allowed; learner sees one course with two operational wrappers—avoid confusion by using batches OR assignments, not both for same deadline without comms.
Role-based training curricula
| Job family | Example LMS courses | Assignment trigger |
|---|---|---|
| All employees | Harassment, security | Onboarding hook |
| Managers | People leadership | Promotion → HR notifies L&D |
| Drivers | DOT safety | Department = Logistics |
| Engineers | IP protection | Assign Training From Hr bulk |
Maintain curriculum map with People job titles and Performance competency models.
Desk list views and filters
On /app/lms-training-assignment:
- Filter Status = Overdue for weekly HR standup.
- Filter Course for module rollout post-incident.
- Export CSV joined to Employee for department dashboards.
Pair with HR list /app/employee-compliance filtered Non-Compliant for regulatory view described in Compliance Vs Lms Certificates.
Permissions hardening
Avoid granting Moderator broadly; use dedicated L&D accounts. HR Managers read team status via API without course authoring rights. Document exceptions in User Roles & Permissions change log.
System Managers run assign_mandatory_training during cutover— revert to named L&D users after migration.
Notification and reminder mechanics
LMS Training Assignment scheduler marks overdue rows and can send reminder emails before due dates (see training assignment reminders). These emails are LMS operational, not HR compliance expiry notices from Employee Compliance.
Configure email branding consistently with Onboarding Portal messages so employees trust links. Include /lms deep link and HR helpdesk for access issues tied to missing LMS Student role.
When HR assigns remedial training after a safety incident, set due dates aggressively (7 days) via desk edit—document in incident report stored as Employee Document.
Keep a single source of truth for who may assign: document Moderator roster in L&D charter and link HR coordinators to integration overview for escalation paths.
Smooth HR (HRMS)
| Guide | Link |
|---|---|
| HR help home | smoothhiring.com/help/hrms |
| Employee records | hrms/people/employee-records |
| Onboarding overview | hrms/onboarding/overview |
| Onboarding templates | hrms/onboarding/onboarding-templates |
| Employee onboarding | hrms/onboarding/employee-onboarding |
| Documents & compliance | hrms/documents-compliance/overview |
| Employee compliance | hrms/documents-compliance/employee-compliance |
| Signature templates | hrms/documents-compliance/signature-templates |