Open yongra opened 4 years ago
Are you talking about the access report? If so, no. The data comes from Canvas and they have no filtering capability. Similarly, you cannot download just the access report for a single assignment as it comes per user. That means that you have to download the entire report and then filter and that's why I let the end-user filter it in Excel.
Sorry, I missed the part about the instructor, The access report is available for the instructor. You would need to modify the part of the code that limits it to just StudentEnrollments to also include TeacherEnrollments.
I likely will not make that change in my version of the script since this is primarily for teachers and most teachers want to see what students are doing, not what they are doing.
Canvas has a built-in access report now that runs at the account level (Admin > Settings > Reports > User Course Access Log) and allows you to limit the dates. Their example includes a teacher enrollment.
Yes. It is the access report. Getting the entire report is perfect. The only thing is I need the report for the instructor user as well. Is there a way to configure the script to obtain the instructor’s access info also?
Thank you,
Ra
From: James Jones notifications@github.com Sent: Thursday, June 18, 2020 4:40 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
Are you talking about the access report? If so, no. The data comes from Canvas and they have no filtering capability. Similarly, you cannot download just the access report for a single assignment as it comes per user. That means that you have to download the entire report and then filter and that's why I let the end-user filter it in Excel.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646294156, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQZOH6DH5U4XECDIFPLRXJ3S3ANCNFSM4OCANRSA.
That is great. I am not much of a programmer. Can you please tell me which part of the script I need to modify?
Also, the canvas report gives me the entire system. I need to generate the report for a few specific courses.
Ra
From: James Jones notifications@github.com Sent: Thursday, June 18, 2020 4:47 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
Sorry, I missed the part about the instructor, The access report is available for the instructor. You would need to modify the part of the code that limits it to just StudentEnrollments to also include TeacherEnrollments.
I likely will not make that change in my version of the script since this is primarily for teachers and most teachers want to see what students are doing, not what they are doing.
Canvas has a built-in access report now that runs at the account level (Admin > Settings > Reports > User Course Access Log) and allows you to limit the dates. Their example includes a teacher enrollment.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646296855, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ44MZ32QZQYVG4GUQLRXJ4LBANCNFSM4OCANRSA.
To get the teachers included, two changes are needed.
Comment or remove the line 472 q.push('enrollment_type[]=student'); (you could also duplicate that line but change student to teacher and that will keep other roles out)
And then in lines 510-512 where it filters by student, change all three lines to just be const enrollments = d.enrollments;
Is the following correct?
q.push('enrollment_type[]=student');
q.push('enrollment_type[]=teacher');
if (typeof d.enrollments === 'object') {
const enrollments = d.enrollments;
Thank you,
Ra From: James Jones notifications@github.com Sent: Thursday, June 18, 2020 5:22 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
To get the teachers included, two changes are needed.
Comment or remove the line 472 q.push('enrollment_type[]=student'); (you could also duplicate that line but change student to teacher and that will keep other roles out)
And then in lines 510-512 where it filters by student, change all three lines to just be const enrollments = d.enrollments;
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646312012, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ64ZT5XP6IYWJFFR6LRXKAOBANCNFSM4OCANRSA.
Looks good. Save it and give it a try.
I am sorry to bother you again.
When I modified the second part (line 510-to 512) with this line, I do not see the “access report data” option on the menu. First one was OK. The options stayed.
Line 510 if (typeof d.enrollments === 'object') { 511 const enrollments = d.enrollments; 512 };
Below is the entire function.
Thanks for the help.
Ra
function compileUserData(d) { const userId = d.id; const user = {}; const userAttributes = [ 'id', 'name', 'sortable_name', 'short_name', 'login_id', 'sis_user_id', 'email' ]; const enrollmentAttributes = [ 'course_id', 'last_activity_at', 'total_activity_time' ]; const gradeAttributes = [ 'current_grade', 'current_score', 'final_grade', 'final_score' ]; let valid = false; if (typeof d.enrollments === 'object') { const enrollments = d.enrollments; }; if (enrollments.length > 0) { addUserAttributes(user, d, userAttributes); valid = true; const enrollment = enrollments[0]; addUserAttributes(user, enrollment, enrollmentAttributes); if (typeof enrollment.grades === 'object') { addUserAttributes(user, enrollment.grades, gradeAttributes); } user.section_ids = enrollments.map(function(e) { return e.course_section_id; }).join(','); } } if (valid) { userData[userId] = user; return true; } else { return false; } }
From: James Jones notifications@github.com Sent: Thursday, June 18, 2020 6:02 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
Looks good. Save it and give it a try.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646327794, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ55HOSKVZMF7CF6VKTRXKFGTANCNFSM4OCANRSA.
When you inserted the line at 472, you pushed everything else down one line. So instead of editing lines 510-512, you were really editing the original lines 509-511. Take out (completely delete) the closing }; that you're showing on line 512, the one immediately after the "const enrollments" line.
Thank you. It is working now. I appreciate the help.
You might want to keep a separate branch to this. I know this script is meant to be used by the teachers to analyze the students. But, some schools/colleges/universities may need this to analyze how the faculty are doing in their classes. To deliver the best education, the schools want to see how their faculty are performing in the class. The Blackboard has a decent report, but Canvas lacks in such a report without using a Data Warehouse. This script seems to be the closest thing I can find.
Again, thank you for your help.
Ra
From: James Jones notifications@github.com Sent: Friday, June 19, 2020 5:01 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
When you inserted the line at 472, you pushed everything else down one line. So instead of editing lines 510-512, you were really editing the original lines 509-511. Take out (completely delete) the closing }; that you're showing on line 512, the one immediately after the "const enrollments" line.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646858786, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ56DZOS45BLI4F5JKTRXPGYZANCNFSM4OCANRSA.
Sorry to both you again. I have a quick question.
Is it possible to make your script to generate the access file based on dates? At the moment, the access report does not generate based on the dates. It seems to be sum of all dates from the beginning.
Ra
From: James Jones notifications@github.com Sent: Friday, June 19, 2020 5:01 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
When you inserted the line at 472, you pushed everything else down one line. So instead of editing lines 510-512, you were really editing the original lines 509-511. Take out (completely delete) the closing }; that you're showing on line 512, the one immediately after the "const enrollments" line.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-646858786, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ56DZOS45BLI4F5JKTRXPGYZANCNFSM4OCANRSA.
No. Canvas delivers all of the data for the entire course so I have to download it whether I want it or not. If they allowed limiting the dates, I might have added it, but I hate throwing away data that the end user may want and I hate adding dialogs with lots of bells and whistles. You can use filtering within Excel to limit the dates.
The admin report that Canvas created allows you to limit it to dates (it is already limited to things within the last month), but it downloads the access logs in all courses. It does allow you to specify the enrollment role as well.
Thank you.
Ra
From: James Jones notifications@github.com Sent: Wednesday, June 24, 2020 4:54 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
No. Canvas delivers all of the data for the entire course so I have to download it whether I want it or not. If they allowed limiting the dates, I might have added it, but I hate throwing away data that the end user may want and I hate adding dialogs with lots of bells and whistles. You can use filtering within Excel to limit the dates.
The admin report that Canvas created allows you to limit it to dates (it is already limited to things within the last month), but it downloads the access logs in all courses. It does allow you to specify the enrollment role as well.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-649065596, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ4BTHKQEYWQ3HX3QTTRYJRVVANCNFSM4OCANRSA.
Mr. Jones,
I am not sure if this is possible. At the moment, selecting access report data saves it to a pre-named file (Access Report.csv). Is it possible to ask the user to enter the name that they want to use or use the context ID column info to create the file? If I run a report for several courses, it is hard to tell which is which if I forget to name them. This might be an enhancement to your script.
Thank you,
Ra
From: James Jones notifications@github.com Sent: Wednesday, June 24, 2020 4:54 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
No. Canvas delivers all of the data for the entire course so I have to download it whether I want it or not. If they allowed limiting the dates, I might have added it, but I hate throwing away data that the end user may want and I hate adding dialogs with lots of bells and whistles. You can use filtering within Excel to limit the dates.
The admin report that Canvas created allows you to limit it to dates (it is already limited to things within the last month), but it downloads the access logs in all courses. It does allow you to specify the enrollment role as well.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-649065596, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQ4BTHKQEYWQ3HX3QTTRYJRVVANCNFSM4OCANRSA.
I was actually thinking about auto-naming with regards to rubrics the other day, but the same kind of thing could apply here. That would be to add the Canvas course ID to the filename and perhaps a timestamp. For example, if the course ID was 1234 and today was July 8, 2020, then it might look like this: access_report_1234-20200708.csv
I would not prompt the user for a name as that is already a functionality of the browser and so me prompting would lead to double prompting. Prompting is different from auto-naming.
That sounds great. I can't wait for you to update the script. Please let me know.
Thank you,
Ra
From: James Jones notifications@github.com Sent: Wednesday, July 8, 2020 10:30 PM To: jamesjonesmath/canvancement canvancement@noreply.github.com Cc: Yong Ra yra@nyit.edu; Author author@noreply.github.com Subject: Re: [jamesjonesmath/canvancement] Enhancements (#30)
I was actually thinking about auto-naming with regards to rubrics the other day, but the same kind of thing could apply here. That would be to add the Canvas course ID to the filename and perhaps a timestamp. For example, if the course ID was 1234 and today was July 8, 2020, then it might look like this: access_report_1234-20200708.csv
I would not prompt the user for a name as that is already a functionality of the browser and so me prompting would lead to double prompting. Prompting is different from auto-naming.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/jamesjonesmath/canvancement/issues/30#issuecomment-655859120, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABEUMQZ6TLX6NRCPALTDYOLR2UTSTANCNFSM4OCANRSA.
This is not a issue. But more of a enhancement to this script.
I do not know if this is possible, but is it possible to download the report between two dates? Also, can it include what the instructor did as well?
I am looking for some detailed report on all user activity in a course. I am used to using Blackboard user report for everyone in specific date and this script shows most of what I need except for picking the two dates and instructor's report.
Thank you,
Ra