.
/**
* Participation report
*
* @package report
* @subpackage participation
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require('../../config.php');
require_once($CFG->dirroot.'/lib/tablelib.php');
require_once(dirname(__FILE__) . '/lib.php');
define('DEFAULT_PAGE_SIZE', 20);
define('SHOW_ALL_PAGE_SIZE', 5000);
$activ = required_param('activ', PARAM_INT); // course id.
$cali = required_param('cali', PARAM_INT); // course id.
//$porcent = required_param('porcent', PARAM_INT); // Porcentaje de incidencia de la calificaciòn sobre la evaluaciòn
$idcourse = required_param('idcourse', PARAM_INT);
$dific = isset($_POST['porcent']) ? $_POST['porcent'] : 60;
$page = optional_param('page', 0, PARAM_INT); // which page to show
$perpage = optional_param('perpage', DEFAULT_PAGE_SIZE, PARAM_INT); // how many per page
$url = new moodle_url('/report/traspasonotasexam/gradelist.php', array('course'=>$idcourse));
if ($activ !== 0) $url->param('activ');
if ($cali !== 0) $url->param('cali');
if ($idcourse !== 0) $url->param('course');
if ($page !== 0) $url->param('page');
if ($perpage !== DEFAULT_PAGE_SIZE) $url->param('perpage');
$PAGE->set_url($url, array(
'page' => $page,
'perpage' => $perpage,
'id' => $idcourse));
$PAGE->set_pagelayout('report');
if (!$course = $DB->get_record('course', array('id'=>$idcourse))) {
print_error('invalidcourse');
}
require_login($course);
$context = context_course::instance($course->id);
// require_capability('report/traspasonotasexam:view', $context);// ver capabilities para el docente en la página.
?>
set_title($course->shortname .': Traspaso de Calificaciones a SIGA ');
$PAGE->set_heading($course->fullname);
echo $OUTPUT->header();
/* $dbe = new auth_plugin_db_inacap;
$authdb = $dbe->db_init(); */
$enrol = enrol_get_plugin('dbinacap');
$authdb = $enrol->db_init_inacap();
$sqlDif = "select asi.tasg_ccod,decode(asi.tasg_ccod,1,(select ponf_jnota_examen *100
from ponderaciones_nota_final where talu_ccod = nvl (1, 1) and peri_ccod_inicio <= sc.peri_ccod
and sc.peri_ccod <= decode (peri_ccod_termino,0, sc.peri_ccod,peri_ccod_termino)), '')
pond_examen from secciones sc, asignaturas asi Where sc.asig_ccod = asi.asig_ccod and sc.secc_ccod=".$course->idnumber;
$result = $authdb->Execute( $sqlDif );
foreach($result as $Ndif){
$ponde = isset($Ndif['POND_EXAMEN']) ? $Ndif['POND_EXAMEN'] : 1;
}
//$dific = isset($_POST['porcent']) ? $_POST['porcent'] : 25;
$baseurl = $CFG->wwwroot.'/report/traspasonotasexam/gradelist.php?idcourse='.$course->id.'&activ='
.$activ.'&cali='.$cali.'&dific='.$dific.'&perpage='.$perpage.'&page='.$page;
// echo $baseurl;
$sqlgrades="select x.userid, x.idnumber, x.firstname,x.item, x.lastname, x.itemname, NVL(x.grademin,0) grademin, NVL(x.grademax,0) grademax,NVL(g.rawgrade,0) rawgrade,
NVL(g.rawgrademin,0) rawgrademin, NVL(g.rawgrademax,0) rawgrademax, (x.GRADEMAX*$dific)/100 as xexig,
to_char( (((7-4)/((NVL(x.GRADEMAX,0) )-(((NVL(x.GRADEMAX,0) )*$dific)/100)))*(NVL(G.RAWGRADE,0)-(((NVL(x.GRADEMAX,0))*$dific)/100)))+4,'990.9') ap ,
to_char( (((4-1)/(((NVL(x.GRADEMAX,0)-NVL(x.GRADEMin,0))*$dific)/100))*NVL(G.RAWGRADE,0))+1,'990.9') rep
from (
select * from(
SELECT u.id userid,u.firstname,u.lastname, u.idnumber
FROM m_user u
JOIN (SELECT DISTINCT eu1_u.id FROM m_user eu1_u JOIN m_user_enrolments eu1_ue ON eu1_ue.userid = eu1_u.id and eu1_ue.status=0 JOIN m_enrol eu1_e ON (eu1_e.id = eu1_ue.enrolid AND eu1_e.courseid = $idcourse)
WHERE eu1_u.deleted = 0 AND eu1_u.id <> 1) je ON je.id = u.id
JOIN (
SELECT DISTINCT ra.userid
FROM m_role_assignments ra, m_context mctx
WHERE ra.roleid IN (5)
and RA.CONTEXTID = MCTX.ID
and MCTX.CONTEXTLEVEL = 50
and MCTX.INSTANCEID = $idcourse
) rainner ON rainner.userid = u.id
AND u.deleted = 0
) usr,
(SELECT id item, itemname, itemtype, grademin, grademax FROM m_grade_items WHERE courseid = $idcourse AND itemtype <> 'course'
AND categoryid in (SELECT id FROM m_grade_categories WHERE courseid = $idcourse ))
) x left join m_grade_grades g on g.itemid = x.item and g.userid = x.userid
where item in ($activ)
order by firstname, lastname ";
// echo $sqlgrades.'
';
$grades = $DB->get_records_sql($sqlgrades);
// // //Generación de Tabla 1--
$totalcount = count($grades);
$data = array();
$sqlgrades_header = 'select * from {grade_items} WHERE id = '.$activ;
$grades_header = $DB->get_record_sql($sqlgrades_header);
// $dbe = new auth_plugin_db_inacap;
// $authdb = $dbe->db_init();
$sqlCali = "SELECT 0 CALI_NEVALUACION,
s.secc_ccod,
'Examen' || ' - ' || s.SECC_FTERMINO_SEC || ' ' || $dific caliSIGA
FROM secciones s
WHERE s.secc_ccod =$cali";
// echo $sqlCali;
$Ncali = $authdb->Execute( $sqlCali );
foreach($Ncali as $Ncalif){
$vNCali = $Ncalif['CALI_NEVALUACION'];
$vCalisiga = $Ncalif['CALISIGA'];
}
echo '