Flat file enrolments - how is this typically used by organisations?

Flat file enrolments - how is this typically used by organisations?

by Mark Adams -
Number of replies: 8
Right, I understand the concept of Flat File enrolments and have successfully got it working. However, I don't really understand of what use it is. Is another system needed to produce the flat file in the first place? It just seems to me that the whole thing could get very messy.

Our situation is we have installed Moodle for a client that has over 5000 users. Up until now the client was happy for the users to just find their courses in the catalogue and take them. It's now apparent that many users are taking the wrong courses so forced enrolments has been requested as an urgent requirement.

We upload and update our users through the bulk upload feature each month. We create a csv file of the user data from a file we receieve from their HR department. We aren't allowed to link directly to their HR database so therefore some of the other authentication types/enrolment plugins have been ruled out.

So, for example, if we were to enrol users on a course based on their department, the only way I can think of making enrolments work is to take our csv file into excel, filter it down into departments then (via a lot of copy and pasting), map all the course ids to the relevant user ids in order to create the flat text file needed for the enrolments.

Another related issue, is that I can't understand why Moodle doesn't support 'global' groups (not the course groups which Moodle does support). I would have thought it would be such an essential feature. Or am I missing something?

It would make life so much easier if you could create a group based on department. So let's say we have 2 groups - Admin and Sales and we have 2 courses (Course 1 & course 2). Admin employees need to take course 1 and Sales staff need to take course 2. If enrolment by global group was supported, you could simly enrol the Admin group on course 1 and the Sales group on course 2 and there'd be no need to use the flat file.

Has anyone had a similar scenario and how did they work around it? And how do organisations typically overcome the global groups and enrolments issue?

Any help here would be greatly appreciated. I apologise if this isn't very clear and i'm happy to try explain further if necessary.

Many thanks in advance.
Average of ratings: -
In reply to Mark Adams

Re: Flat file enrolments - how is this typically used by organisations?

by Mark Adams -
...sorry, forgot the rules. We're using Moodle version 1.9.
In reply to Mark Adams

Re: Flat file enrolments - how is this typically used by organisations?

by Peter Lai -
Most people are using flatfile as a "poor man's XML" method of doing the enrolment imports without having to use a more complex way to load the enrolments (i.e. external database or LDAP).

Lots of people are leveraging LDAP for very specific group/class info integration.

Or you could just integrate that information into the process you are using to create enrolment flatfile. (Like some script picks out all the people in Admin Department from your authoritative "system of record" and enrols them into Class 1 and picks out all the people and puts them into Class 2 defined by the flatfile).
Average of ratings: Useful (1)
In reply to Peter Lai

Re: Flat file enrolments - how is this typically used by organisations?

by Mark Adams -
Thanks for your reply Peter.

So when people use external database or LDAP for loading enrolments am I correct in thinking they'd also need to build a front end (web) interface to manage that database? And i'm presuming that if we wanted the client to manage enrolments we'd need to create a seperate login system for that also? Sorry if this seems like a simple question but I just don't understand the process and can't find anything on the forums.

Also, the script you mention - could this be written within Excel? (not by me)

Cheers.
In reply to Mark Adams

Re: Flat file enrolments - how is this typically used by organisations?

by Jason Hollowell -
Picture of Particularly helpful Moodlers
Mark,

I was just doing a little reading on the Flat file enrollment option and stumbled onto your post here.

A couple of observations:

1. In response to your query about groups, actually I think what you have proposed here is possible. You can put the information you have, "Admin" and "Sales" into one of the profile fields (Department, for example) and then with Bulk user actions filter for either "Admin" or "Sales", add the results of the filter to your selection and then choose the "Enroll to courses" option found under the "With selected users..." pulldown menu. Note - you could also create some new user profile fields, populate them with the values you want to use, and then filter based on those values, as well.

2. I think you are correct in assuming that a front end for the database used for enrollments is desirable. We are currently working on something like this using a package called Xataface and are actually setting it up to use a table we've added in the Moodle database.

3. As for the "script" in your Excel file, I think you could just use some calculations in Excel to ease the process considerably. It's hard to say for sure without knowing what fields and values you have in your database but you should be able to use some text based calculations in conjunction with the filters built into Excel to make the process easier. (The "if" operator is the one that first comes to my mind.)

Hope this helps a little. smile

Jason
In reply to Jason Hollowell

Re: Flat file enrolments - how is this typically used by organisations?

by Greg Egan -

Hi Jason

This is quite a late reply, like you I was doing some reading about enrolments and came across this thread.  Are you sure that "Enroll to courses" is an option under "With selected users" in Bulk User Actions?  It's not in my 1.9 or 2.0 sites.  Is it something that can be enabled?

Greg Egan

In reply to Mark Adams

Re: Flat file enrolments - how is this typically used by organisations?

by Andy Hicken -

Hi Mark,

I'm only three years late, and you've probably found a solution already, but if I'm understanding your case correctly, then I think you can enroll the users into courses during the bulk upload. This works for new users as well as existing users.

From the help file:

Enrolment field names (optional): The course names are the "shortnames" of the courses - if present then the user will be enrolled in those courses. "Type" means type of role to be used for associated course enrolment. Value 1 is default course role, 2 is legacy Teacher role and 3 is legacy Non-editing Teacher. You can use role field instead to specify roles directly - use either role short name or id (numeric names of roles are not supported). Users may be also assigned to groups in course (group1 in course1, group2 in course2, etc.). Groups are again identified by its names or ids (numeric names of groups are not supported).

course1, type1, role1, group1, course2, type2, role2, group2, etc.

 

And

Updating existing accounts

By default Moodle assumes that you will be creating new user accounts, and skips records where the username matches an existing account. However, if you allow updating, the existing user account will be updated.

When updating existing accounts you can change usernames as well. Set "Allow renames" to Yesand include in your file a field called oldusername.

Warning: any errors updating existing accounts can affect your users badly. Be careful when using the options to update.

 

I know this only because I had to figure it out myself. ;)

Andy Hicken

In reply to Mark Adams

Re: Flat file enrolments - how is this typically used by organisations?

by Carl Thelen -
There's one big-picture item that you may or may not be missing, and you're already onto it. The second sentence of your post, "Is another system needed to produce the flat file in the first place?" is the key.

Moodle is commonly used by colleges and universities. They _already_ have systems whose job is to know which students are enrolled in which courses. Moodle interfaces with these Student Information Systems (SIS's) to get the right students into the right Moodle courses. Moodle does not typically interface with HR systems, because these systems are for faculty and staff, not students.

As far as departments, SIS's are usually concerned with English or Math, not Admin or Sales. Your situation where "All admin users take class 1 right now, and all sales users take class 2 right now" is rare or unknown in education.

So Moodle is expecting another system to tell it who's enrolled in what class. Your client should be telling you who's where. They are the owners of the data and the groups, not you.

Does that help?

Cheers!
In reply to Mark Adams

Re: Flat file enrolments - where do you see/edit message sent to students

by Sophia Ben -

Hello,


The enroll plug-in allows you to send a welcome message when students are enrolled using the flat file.  Where is that message saved/how can you edit it?

Thank you.