$cad='';
$sep=''; 
$qd="DELETE FROM est_dif_cup WHERE id_cuo=9 ";

if(isset($params['id_alu']) && $params['id_alu']!='%'){ 
	$cad.=$sep." id_alu = ".$params['id_alu']; 
	$sep= '  AND  '; 
	$qd.=" AND id_alu=".$params['id_alu'];
}else if(isset($params['cod_cur']) && $params['cod_cur']!='%'){ 
	$cad.=$sep." cod_cur = ".$params['cod_cur']." ";
	$sep= '  AND  '; 
	$qd.=$sep." id_alu in ( select id_alu from alumcurso where cod_cur=".$params['cod_cur'].")";
}else if(isset($params['cod_gra']) && $params['cod_gra']!='%'){ 
	$cad.=$sep." cod_gra =".$params['cod_gra']." "; 
	$sep= '  AND  '; 
	$qd.=$sep." id_alu in ( select id_alu from alum_grado where cod_gra=".$params['cod_gra'].")";
}

$rs=$con->query($qd);

if($cad!='') $cad=' AND '.$cad;

$rs=$con->query("INSERT INTO est_dif_cup(id_cuo,id_alu,id_ano,ob_est,fec_est,estado)
SELECT 9,id_alu,id_ano,'Falta valoracion final en algunas asignaturas', NOW(),'a'
FROM (
	SELECT id_alu,cod_cur, COUNT(cod_mat) tot_a
	FROM seg_final s
	INNER JOIN curso USING(cod_cur)
	WHERE id_peri=5 AND cod_mat <>0 AND esp_mat='n' AND cod_gra<12 $cad
	GROUP BY id_alu,cod_cur
)a
INNER JOIN (
	SELECT cod_cur,id_ano, COUNT(cod_mat) tot_c
	FROM matgra
	WHERE esp_mat='n'
	GROUP BY cod_cur,id_ano
) b USING(cod_cur)
WHERE tot_a<>tot_c");

$rs=$con->query("UPDATE alum_grado SET apro_alu ='No aprobado'
WHERE id_alu IN(
	SELECT id_alu
	FROM est_dif_cup
	WHERE id_cuo=9)
");
$rs=$con->query("UPDATE alum_grado SET apro_alu ='No aprobado'
WHERE id_alu NOT IN(
	SELECT id_alu
	FROM seg_final 
	WHERE id_peri=5 AND cod_mat<>0)
");