WeBWorK Main Forum

moving problems between (open) homework sets

moving problems between (open) homework sets

by Chrissy Safranski -
Number of replies: 3
I have frequently thought that I would like an easy way to move just a few problems between homework sets.  The best way I've found is to have two tabs open, add blank problems to the target set, and then copy and paste the locations from one tab to the other, and then delete the problems from the original set.  Since I'm doing this all in one course, I don't have problems with any local edits or anything.

I think however, that if a problem set is open, and a student has completed a problem, then if I copy the problem's location to another set and delete the problem from the original set, the student's data for the problem would be lost.  

I don't want to extend the deadline for the whole set, because I don't want to reward procrastinators for the sake of a couple problems that I didn't quite get to.  But sometimes, I really like the problems!  I'd like to just move them to the next open problem set so that anyone who did complete them still gets credit for them in the next set without having to redo them.  

I've tried searching for help on this, but everything I find is about moving homework sets between courses, not about moving problems between homework sets in a course.

Does this ability exist?
In reply to Chrissy Safranski

Re: moving problems between (open) homework sets

by Hedley Pinsent -
"...move ... problems between homework sets."

Definitions??
problem - a file containing programming instructions; more specifically: stuff like "if then else BEGIN_TEXT END_TEXT ans->cmp"

homework set - a set definition file that contains pointers to one, but usually a number of problems.

Observation:
A single problem file can be "pointed to" by a number of homework sets.

"... if a problem set is open,..."

A lot happens when a homework set is "assigned"; this is when the particular random versions for each student are generated. To have this transfered for problems 1,2 and generated for probems 3,4,5,... would be a major new feature.

OK - you fell behind on your lecture and several students did the problems anyway.
You could tinker with the scoring and give these few students credit for the reassigned problem without having to redo it; there is a feature for that.

See screenshot; when you edit the individual data you can change the "status" of any particular question to "1" (typically) indicating correct (I think??)

hp
Attachment edit_individual_data.png
In reply to Chrissy Safranski

Re: moving problems between (open) homework sets

by Danny Glin -
As Hedley said, this functionality does not currently exist in WeBWorK.  I believe that it wouldn't be too hard to do this directly in the database, meaning it could be accomplished using some sql commands, or probably even a script using wwsh.

Basically you would add the problem(s) to the new set, then copy over the problem_user record for each student to the new assignment.

Of course doing things this way is always dangerous, as you risk overwriting other data if you do it wrong.
In reply to Danny Glin

Re: moving problems between (open) homework sets

by Chrissy Safranski -
Thank you to both of you.  I'm not sure enough of my sql to attempt that solution, so I'll probably just add them to a new set and mark them correct for the affected students in the future.