GradebookPlus::Parser - Parses Gradebook Plus text reports.
use GradebookPlus::Parser;
# create a new gradbook my $gradebook = new GradebookPlus::Parser;
# parse $gradebook->parse($data);
# do stuff with the methods
Gradebook is a module useful for parsing Gradebook Plus text reports, a program used by many K-12 school districts. Simply go to
Reports-> Gradebook of entire Class->(check fancy report, catagory totals, and all grades)-> Save to disk.
The parser can then parse the contents of this file. Use it how you like; I use it so teachers can put their grades online with minimal effort on their part.
parse($report)
Send it a scalar with the report to parse, in one large chunk. The object becomes filled upon using this method. You can access the data using the below methods:
Returns the name of the report, if you happen want it.
Returns a list of students in the report. Each element is a reference to an anonymous hash with 3 elements:
first last pw
pw is a generated password which you can use, rather than create your own. Remember, this module was developed for use with an online grade report system.
A counter of the next student in the report. Kinda like an internal foreach loop. Returns the next student.
Returns average total percent for the class
Returns average total points for the class
Returns total possible points for the class
Returns * for the given assignment name The exception is assignment_names, which does not take an argument and returns a list of all assignment names.
List of methods: assignment_names assignment_possible assignment_scores assignment_average
Returns * for the given catagory name The exception is catagory_names, which does not take an argument and returns a list of all catagory names.
List of methods: catagory_names catagory_possible catagory_scores catagory_average
Returns * for the given student. The exceptions are with student_assignments and student_catagories, which return an array of all scores in the same order as @assignment_names.
List of methods: student_assignments student_catagories student_total_points student_percent student_letter
Joseph F. Ryan, ryan.311@osu.edu