* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
*/
/*******************************************************************************************************
* stromanalyse - Auswertung der Studentenstroeme in der FHTW
*******************************************************************************************************/
require_once('../../cis/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
//DB Verbindung herstellen
if (!$conn = @pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
$htmlstr='';
$ausgabe='';
$summe=0;
$rest=0;
$studiensemester_kurzbz='';
$studiensemester_kurzbz = (isset($_REQUEST['studiensemester_kurzbz'])?$_REQUEST['studiensemester_kurzbz']:'-1');
if($studiensemester_kurzbz != -1)
{
$ausgabe = "
Master-Studiengänge: ($studiensemester_kurzbz)
";
$qry_stg="SELECT * FROM public.tbl_studiengang WHERE typ='m' ORDER by bezeichnung, studiengang_kz";
$result_stg=pg_query($conn, $qry_stg);
while ($row_stg=pg_fetch_object($result_stg))
{
$summe=0;
$rest=0;
//Studiengänge, die zuvor abgeschlossen wurden
$qry_master="SELECT DISTINCT count(*)as count ,studiengang_kz, typ, tbl_studiengang.bezeichnung as bez
FROM public.tbl_person JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Absolvent' AND typ!='m'
AND public.tbl_person.person_id IN(SELECT public.tbl_person.person_id FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND studiensemester_kurzbz='".$studiensemester_kurzbz."'
AND rolle_kurzbz='Student'
AND ausbildungssemester='1')
GROUP BY studiengang_kz, typ, public.tbl_studiengang.bezeichnung ORDER BY tbl_studiengang.bezeichnung, studiengang_kz";
//Anzahl der Studenten ohne Abschluß auf der FHTW
/*$qry_rest="SELECT count(*) as rest FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND studiensemester_kurzbz='".$studiensemester_kurzbz."'
AND rolle_kurzbz='Student'
AND ausbildungssemester='1'
AND tbl_person.person_id NOT IN (SELECT DISTINCT public.tbl_person.person_id
FROM public.tbl_person JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Absolvent' AND typ!='m'
AND public.tbl_person.person_id IN(SELECT public.tbl_person.person_id FROM tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND studiensemester_kurzbz='".$studiensemester_kurzbz."'
AND rolle_kurzbz='Student'
AND ausbildungssemester='1'))";
$result_rest=pg_query($conn, $qry_rest);
$row_rest=pg_fetch_object($result_rest);*/
//Anzahl der Studenten im 1.Semester des MasterStg
$qry_anzahl="SELECT count(*) as anzahl FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND studiensemester_kurzbz='".$studiensemester_kurzbz."'
AND rolle_kurzbz='Student'
AND ausbildungssemester='1'";
$result_anzahl=pg_query($conn, $qry_anzahl);
$row_anzahl=pg_fetch_object($result_anzahl);
$ausgabe .= "
";
$qry_stg="SELECT * FROM public.tbl_studiengang WHERE typ='b' ORDER by bezeichnung,studiengang_kz";
$result_stg=pg_query($conn, $qry_stg);
while ($row_stg=pg_fetch_object($result_stg))
{
$summe=0;
$rest=0;
//Master-Studiengänge, die noch besucht wurden
$qry_bachelor="SELECT DISTINCT count(*)as count, studiengang_kz, typ, bezeichnung as bez FROM
(SELECT DISTINCT ON(public.tbl_person.person_id, studiengang_kz) studiengang_kz,typ, tbl_studiengang.bezeichnung
FROM public.tbl_person JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Student' AND typ='m'
AND public.tbl_person.person_id IN(SELECT public.tbl_person.person_id FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND rolle_kurzbz='Absolvent'
AND (studiensemester_kurzbz='".$studiensemester_kurzbz."' OR studiensemester_kurzbz='SS".substr($studiensemester_kurzbz,-4)."') )) as b
GROUP BY studiengang_kz, typ, bezeichnung ORDER BY bezeichnung, studiengang_kz";
//Anzahl der Studenten ohne weitere Masterstudien am FHTW
/*$qry_rest="SELECT count(*) as anzahl FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND rolle_kurzbz='Absolvent'
AND public.tbl_person.person_id NOT IN (SELECT DISTINCT ON(public.tbl_person.person_id, studiengang_kz) public.tbl_person.person_id
FROM public.tbl_person JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Student' AND typ='m'
AND public.tbl_person.person_id IN(SELECT public.tbl_person.person_id FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND rolle_kurzbz='Absolvent'))";
$result_rest=pg_query($conn, $qry_rest);
$row_rest=pg_fetch_object($result_rest);*/
//Anzahl der Absolventen des Studiengangs
$qry_anzahl="SELECT count(*) as anzahl FROM public.tbl_person
JOIN public.tbl_prestudent ON(public.tbl_person.person_id=public.tbl_prestudent.person_id)
JOIN public.tbl_prestudentrolle ON(public.tbl_prestudent.prestudent_id=public.tbl_prestudentrolle.prestudent_id)
WHERE studiengang_kz='".$row_stg->studiengang_kz."'
AND rolle_kurzbz='Absolvent'
AND (studiensemester_kurzbz='".$studiensemester_kurzbz."' OR studiensemester_kurzbz='SS".substr($studiensemester_kurzbz,-4)."')";
$result_anzahl=pg_query($conn, $qry_anzahl);
$row_anzahl=pg_fetch_object($result_anzahl);
$ausgabe .= "
Wählen Sie bitte nachfolgend ein Wintersemester aus.';
$htmlstr .= "\n";
echo $htmlstr;
echo $ausgabe;
echo "Anmerkungen:
Doppelvorkommen von Studierenden fuehrt zu Verfaelschungen bei der Anzahl der 'Externen': - Absolventen bzw. Studenten in verschiedenen Studiengaengen. - Doppelteintragungen: z.B. nach Abbruch neu inskribiert";
?>