Gerar lista de nota dos alunos de uma determinada atividade do Moodle pelo número de identificação

Gerar lista de nota dos alunos de uma determinada atividade do Moodle pelo número de identificação

por Lino Vaz Moniz -
Número de respostas: 0

Para gerar relatório de nota de uma atividade do curso do Moodle pelo número de identificação da atividade, execute os seguintes comandos. 

Para os exemplos a seguir, será tomado como número de atividade a chave ATIVIDADE_AVF  ao executar o código, coloque a chave da atividade que você cadastrou.

Comando SQL

SELECT u.id, u.firstname,u.lastname,u.email,u.username, g.finalgrade AS nota FROM  mdl_grade_items i INNER JOIN mdl_grade_grades g ON g.itemid=i.id INNER JOIN mdl_user u ON g.userid=u.id WHERE   i.courseid=? AND i.idnumber='ATIVIDADE_AVF'

Passe o parâmetro id do curso em i.courseid=?  

Altere o parâmetro do número de identificação em i.idnumber=?

Comando PHP

function get_item_grades_by_idnumber($courseid,$idnumber){
global $CFG,$DB;
$fidnumber="'".$idnumber."'";
$sql ="SELECT u.id, u.firstname,u.lastname,u.email,u.username, g.finalgrade AS nota FROM {$CFG->prefix}grade_items i INNER JOIN {$CFG->prefix}grade_grades g ON g.itemid=i.id INNER JOIN {$CFG->prefix}user u ON g.userid=u.id WHERE i.courseid=$courseid AND i.idnumber=$fidnumber ";
$rows = $DB->get_records_sql($sql);
return $rows;
}