Upload users in Moodle Workplace
This feature is part of Moodle Workplace, which is available through Moodle Partners.
The Upload users tool is enhanced in Moodle Workplace to allow additional functionality.
A tenant can be specified using tenant field when uploading the CSV by users with the capability tool/tenant:allocate. These users will be able to specify a tenant when uploading users (both when creating new users and updating existing).
If the current user does not have this capability, they can only create/update users in their own tenant. Use of tenant field is not allowed to these users. Note that by default, only site admins have this capability.
Example of the CSV file:
username,firstname,lastname,email,tenant jonest,Tom,Jones,email@example.com,big reznor,Trent,Reznor,firstname.lastname@example.org,small
Tenants are matched by their "ID number".
If the current user has the capability to assign jobs (in addition to the capability to use the upload user tool), they can create jobs for users or modify existing ones. Both fields jobdepartment1 and jobposition1 must have values, and fields jobstartdate1 and jobenddate1 are optional. When a user already has a job in this department and position, the dates will be modified but the new job will not be created. Departments and positions are matched by their "ID number" just like tenants. It is possible to add more than one job for one user in the same line by adding jobdepartment2, jobposition2, etc.
username,firstname,lastname,email,jobdepartment1,jobposition1,jobstartdate1,jobenddate1 jonest,Tom,Jones,email@example.com,exampledep,examplepos,, reznor,Trent,Reznor,firstname.lastname@example.org,exampledep2,examplepos2,2019-05-07, jon,Jon,Whatever,email@example.com,exampledep2,examplepos2,2019-05-07,2032-01-09
Programs and certifications allocations
If the current user has the capability to allocate to programs and/or certifications (in addition to the capability to use the upload user tool), they can do so in the upload users tool. Only users, programs and certifications from the same tenant can be used. If the user already has a direct allocation to a program/certification, the dates will be updated. Programs and certifications are matched by their "ID number".
username,program1,programstartdate1,programenddate1,programduedate1 user14,prog1,2019-05-12,, user15,prog1,2019-05-12,2032-01-09,2032-01-09 user12,prog1,2019-05-12,2032-01-09, user13,prog1,2019-05-12,,2032-01-09
username,certification1,certificationstartdate1,certificationenddate1,certificationduedate1,certificationexpirydate1 user14,cert1,2019-05-12,,, user15,cert1,2019-05-12,2032-01-09,2032-01-09, user12,cert1,2019-05-12,2032-01-09,, user13,cert1,2019-05-12,2032-01-09,2032-01-09,2032-01-09
If the current user has the 'tool/datastore:uploadcoursecompletion' capability, they can upload course completion data to be stored in the Data store for users who belong to the same tenant as themselves. This data can be reported on by using Report builder to create a new report using the "Course completion from datastore" report source. The following is an example CSV file:
username,coursecompleted1,coursecompleteddate1 student,English 101,2019-01-01
Courses are matched on the 'coursecompleted' field of the CSV, which should refer to the shortname of the course in Moodle. It's possible to set the completion date by using the 'coursecompleteddate' field (if this field is omitted, then the current date will be used).