Moodle

Error on selecting to hide marks for each question

Details

  • Type: Sub-task Sub-task
  • Status: Closed Closed
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 2.0
  • Fix Version/s: 2.0
  • Component/s: Quiz
  • Labels:
    None
  • Affected Branches:
    MOODLE_20_STABLE
  • Fixed Branches:
    MOODLE_20_STABLE

Description

I've created a new Quiz using existing questions from ICMA Learning about eAssessment.

Don't know if you need to recreate it.

Then I ran it with three students.

Then I selected 'No' for Show/Download marks for each question

And got the following error. I also saw the error when doing the same with the existing quiz 'A demonstration of a 'CMA style' formative assessment'.

ERROR: column "qsgrade12" does not exist

SELECT ''||u.id||'#'||COALESCE(qa.attempt, '0') AS uniqueid, (CASE WHEN qa.sumgrades = (SELECT MAX(qa2.sumgrades) FROM dev_quiz_attempts qa2 WHERE qa2.quiz = qa.quiz AND qa2.userid = qa.userid) AND qa.timestart = (SELECT MIN(qa3.timestart) FROM dev_quiz_attempts qa3 WHERE qa3.quiz = qa.quiz AND qa3.userid = qa.userid AND qa3.sumgrades = qa.sumgrades) THEN 1 ELSE 0 END) AS gradedattempt, qa.uniqueid AS attemptuniqueid, qa.id AS attempt, u.id AS userid, u.idnumber, u.firstname, u.lastname, u.picture, u.imagealt, qa.sumgrades, qa.timefinish, qa.timestart, qa.timefinish - qa.timestart AS duration , COALESCE((SELECT MAX(qqr.regraded) FROM dev_quiz_question_regrade qqr WHERE qqr.attemptid = qa.uniqueid),-1) AS regraded FROM dev_user u LEFT JOIN dev_quiz_attempts qa ON qa.userid = u.id AND qa.quiz = 129 WHERE qa.id IS NOT NULL AND qa.preview = 0 ORDER BY qsgrade12 ASC, uniqueid ASC
? line 796 of lib/dmllib.php: call to debugging()
? line 1088 of lib/dmllib.php: call to get_recordset_sql()
? line 1221 of lib/tablelib.php: call to get_records_sql()
? line 288 of mod/quiz/report/overview/overview_table.php: call to table_sql->query_db()
? line 1241 of lib/tablelib.php: call to quiz_report_overview_table->query_db()
? line 399 of mod/quiz/report/overview/report.php: call to table_sql->out()
? line 94 of mod/quiz/report.php: call to quiz_overview_report->display()

Activity

Hide
Philip Butcher added a comment -

A little more on this. I went to another course to test group reports. So lots of opening and closing browsers.

And when I came back to this page, it had saved my request to NOT show all question grades and it displayed the page correctly. I could then turn the question grades on and off and it worked fine.

I did reproduce this bug on various courses before submitting it.

Don't know where that leaves us but bugs that come and go mysteriously are a concern.

I'll keep my eyes on this and report further.

Show
Philip Butcher added a comment - A little more on this. I went to another course to test group reports. So lots of opening and closing browsers. And when I came back to this page, it had saved my request to NOT show all question grades and it displayed the page correctly. I could then turn the question grades on and off and it worked fine. I did reproduce this bug on various courses before submitting it. Don't know where that leaves us but bugs that come and go mysteriously are a concern. I'll keep my eyes on this and report further.
Hide
Jamie Pratt added a comment -

Hi Phil,

I can see where the error is coming from.

The problem is that the sorting of the table that is saved in a session var is set to sort on the grade. But the grade field is no longer being fetched from the db since you have now selected not to display grades. Thus there is an error. The qsgrade field appears once in the sql in the ORDER BY clause at the end. Will be easy to fix.

Jamie

Show
Jamie Pratt added a comment - Hi Phil, I can see where the error is coming from. The problem is that the sorting of the table that is saved in a session var is set to sort on the grade. But the grade field is no longer being fetched from the db since you have now selected not to display grades. Thus there is an error. The qsgrade field appears once in the sql in the ORDER BY clause at the end. Will be easy to fix. Jamie

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: