external database enrollment is assigning two roles for a user

external database enrollment is assigning two roles for a user

av Tony Box -
Antall svar: 6

Like my subject says, some users are being enrolled into their course as both a Teacher and a Student role using the external database plugin.

This is only happening to people who should ONLY be a "teacher." All of my data mappings look correct and the external database doesn't have these users listed as both teachers and students so I have no idea why it's assigning them both.

Is there some sort of 'default' role that the plugin will assign? Maybe it's assigning them both the 'default' student as well as the teacher role?

Has anyone seen this before?

Thanks,

Tony

Gjennomsnittlig vurdering: -
Som svar til Tony Box

Re: external database enrollment is assigning two roles for a user

av Tony Box -

Bumping this since it's still a complete mystery to me why this might be occurring.

Anyone have any ideas?

Som svar til Tony Box

Re: external database enrollment is assigning two roles for a user

av Peter Seaman -

Hidden column in your spreadsheet or .csv file? (maybe one that was deleted and left a trail somehow).

Just taking a wild stab here.

Greetings from across town!

Peter

Som svar til Peter Seaman

Re: external database enrollment is assigning two roles for a user

av Tony Box -

Oh hi Peter!

We're using the external database so there isn't a spreadsheet or anything. It uses a view that's automatically created in Banner which contains all of the users, the courses they're enrolled in, and their role. I doublechecked a while back to make sure faculty weren't in this view as both a student and a faculty role, and they aren't. They're still listed as just a faculty.

That's why this is so confusing to me... where else would the external db enrollment plugin be getting the idea that they should also have a student role?

The weird thing is it doesn't seem to affect every faculty member in every class. There are a few people who I've noticed are properly enrolled only as faculty.

Som svar til Tony Box

Re: external database enrollment is assigning two roles for a user

av Peter Seaman -

Hi Tony: Databases aren't really my thing, but I'm guessing that the lack of any responses from Moodlers in this space means that folks suspect it's more of a db issue (Banner issue) than a Moodle issue (Moodle just pulls in whatever is in the db).

We use Banner at our college, and I can put you in touch with a couple of Banner experts, if you'd like. Or I wonder if someone at Sungard - er, Ellucian could help?

I know we have Banner issues whenever an instructor needs to be a student in a course: some special switch needs to be thrown somewhere to distinguish between the student and instructor roles.

Feel free to contact me directly via e-mail if you'd like me to chase down a Banner expert here. Find my contact info at this link:

http://www.pcc.edu/scripts/sdquery.pl?all=seaman

Peter

Som svar til Tony Box

Re: external database enrollment is assigning two roles for a user

av m question -

yes , there is a defualt setting for people who do not have any role and you can choose from menue what is the defualt role.

role settings for external database

what I cam think of that you might have doublicate data, one with role field is assigned to teacher and other none and Moodle enrol the user as student (default)


Som svar til m question

Re: external database enrollment is assigning two roles for a user

av Tony Box -

Thanks for the suggestion.

I did some more testing and noticed that changing the default role to something other than student, then running the sync script did not change their additional role... so that was not the case. We also double checked and made sure there was only one entry per person in the database, which there is.

So.. it had to be something else.

In DEV, I removed all users listed as faculty from the external user database, then ran the sync script. As expected, it removed all faculty from their courses. Then, I re-added all faculty back to the user database and ran the sync script again... it re-added them just as faculty this time--without the additional student role!

This makes me wonder--it may be possible I ran the sync script at a time when people who should have been faculty didn't actually have a role assigned to them in the external database. Doing so would have added them as the default "Student" role.

Then, when they were properly labeled as faculty in the database, the script ran again (it's on cron) and ALSO enrolled them as Faculty. But every time the script ran after that, it never checked to see if it should remove their Student role (which it should have since they no longer had an unassigned role in the external database).

This is all a guess as to what happened, but it's the best one I've got. I can't think of any other plausible reasons the external DB enrollment would act this way. If the code indeed does work this way (maybe someone better versed in PHP can check?) then I think we should open a new tracker ticket to improve the external db enrollment script's role-checking capabilities.


-Tony