Cleanup and replace legacy Code

This commit is contained in:
oesi
2017-03-28 11:31:58 +02:00
parent 43c0a0bd30
commit 90e7969317
4 changed files with 548 additions and 411 deletions
+104 -81
View File
@@ -29,121 +29,143 @@ if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
$db = new basis_db();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen(get_uid());
if(!$rechte->isBerechtigt('student/stammdaten', null, 's'))
die($rechte->errormsg);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
echo '<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<meta charset="UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">';
include('../../include/meta/jquery.php');
include('../../include/meta/jquery-tablesorter.php');
echo '
<script language="Javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
sortList: [[0,0]],
widgets: ["zebra"],
});
});
</script>
</head>
<body>';
echo "<h2>AbgängerInnenstatistik ".$db->convert_html_chars($stsem);
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester();
$studsem->getAll();
echo "<h2>AbgängerInnenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester();
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz == $stsem)
$selected = 'selected';
else
$selected = '';
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>';
echo $stsemester->studiensemester_kurzbz;
echo '</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
if ($stsem != '')
{
$stgs = $rechte->getStgKz();
if($stgs[0]=='')
$stgwhere='';
else
{
$stgwhere=' AND studiengang_kz in(';
foreach ($stgs as $stg)
$stgwhere.="'$stg',";
$stgwhere = mb_substr($stgwhere,0, mb_strlen($stgwhere)-1);
$stgwhere.=' )';
}
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent
if (count($stgs) == 0)
$stgwhere = '';
else
{
$stgwhere = ' AND studiengang_kz in(';
$stgwhere .= $db->db_implode4SQL($stgs);
$stgwhere .= ' )';
}
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener' AND studiensemester_kurzbz='".addslashes($stsem)."'
) AS abgewiesene,
(SELECT count(*) FROM public.tbl_prestudent
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abgewiesene,
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener' AND geschlecht ='m' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener'
AND geschlecht ='m' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abgewiesene_maennlich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener' AND geschlecht ='w' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener'
AND geschlecht ='w' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abgewiesene_weiblich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abbrecher,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher' AND geschlecht ='m' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher'
AND geschlecht ='m' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abbrecher_maennlich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher' AND geschlecht ='w' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher'
AND geschlecht ='w' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS abbrecher_weiblich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS unterbrecher,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher' AND geschlecht='m' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher'
AND geschlecht='m' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS unterbrecher_maennlich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher' AND geschlecht='w' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher'
AND geschlecht='w' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS unterbrecher_weiblich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS absolvent,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND geschlecht='m' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND geschlecht='m' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS absolvent_maennlich,
(SELECT count(*) FROM public.tbl_prestudent
(SELECT count(*) FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND geschlecht='w' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND geschlecht='w' AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS absolvent_weiblich
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv $stgwhere
ORDER BY kurzbzlang; ";
if($db->db_query($qry))
if ($db->db_query($qry))
{ ?>
<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<table id="t1">
<thead>
<tr>
<th></th>
@@ -154,24 +176,24 @@ if($stsem!='')
</tr>
<tr>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:numeric'>m</th>
<th class='table-sortable:numeric'>w</th>
<th class='table-sortable:numeric'>Gesamt</th>
<th class='table-sortable:numeric'>m</th>
<th class='table-sortable:numeric'>w</th>
<th class='table-sortable:numeric'>Gesamt</th>
<th class='table-sortable:numeric'>m</th>
<th class='table-sortable:numeric'>w</th>
<th class='table-sortable:numeric'>Gesamt</th>
<th class='table-sortable:numeric'>m</th>
<th class='table-sortable:numeric'>w</th>
<th class='table-sortable:numeric'>Gesamt</th>
<th>Studiengang</th>
<th>m</th>
<th>w</th>
<th>Gesamt</th>
<th>m</th>
<th>w</th>
<th>Gesamt</th>
<th>m</th>
<th>w</th>
<th>Gesamt</th>
<th>m</th>
<th>w</th>
<th>Gesamt</th>
</tr>
</thead>
<tbody>
<?php while($row = $db->db_fetch_object())
<?php while ($row = $db->db_fetch_object())
{ ?>
<tr>
<td><?php echo strtoupper($row->typ.$row->kurzbz)?> (<?php echo $row->kurzbzlang ?>)</td>
@@ -190,7 +212,8 @@ if($stsem!='')
</tr>
<?php } ?>
</tbody></table>
<?php }
<?php
}
}
?>
</body>
+169 -140
View File
@@ -1,140 +1,169 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
/**
* Exportiert die Studentendaten in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen werden immer dazugehaengt
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
function writecol($zeile, $i, $content)
{
global $worksheet, $maxlength;
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content)>$maxlength[$i])
$maxlength[$i]=mb_strlen($content);
}
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$maxlength= array();
$zeile=1;
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Abschlusspruefung". "_" . date("d_m_Y") . ".xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Abschlusspruefung");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
$stsem = new studiensemester();
$stsem->load($studiensemester_kurzbz);
//Zeilenueberschriften ausgeben
$headline=array('Titelpre','Vorname','Nachname','Titelpost','Vorsitz','Pruefer1','Pruefer2','Pruefer3',
'Abschlussbeurteilung','Typ','Datum','Sponsion','Anmerkung');
$i=0;
foreach ($headline as $title)
{
$worksheet->write(0,$i,$title, $format_bold);
$maxlength[$i]=mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
titelpre, vorname, nachname, titelpost,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=vorsitz) as vorsitz,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer1) as pruefer1,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer2) as pruefer2,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer3) as pruefer3,
(SELECT bezeichnung FROM lehre.tbl_abschlussbeurteilung WHERE tbl_abschlussbeurteilung.abschlussbeurteilung_kurzbz=tbl_abschlusspruefung.abschlussbeurteilung_kurzbz) as bezeichnung, tbl_pruefungstyp.beschreibung, datum, sponsion, tbl_abschlusspruefung.anmerkung
FROM
lehre.tbl_abschlusspruefung, public.tbl_studentlehrverband, public.tbl_benutzer, public.tbl_person,
lehre.tbl_pruefungstyp
WHERE
tbl_abschlusspruefung.student_uid=public.tbl_studentlehrverband.student_uid AND
tbl_studentlehrverband.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
tbl_studentlehrverband.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_benutzer.uid = tbl_abschlusspruefung.student_uid AND
tbl_person.person_id = tbl_benutzer.person_id AND
tbl_abschlusspruefung.pruefungstyp_kurzbz = tbl_pruefungstyp.pruefungstyp_kurzbz
";
if($semester!='')
$qry.= " AND tbl_studentlehrverband.semester='".addslashes($semester)."'";
$qry.=' ORDER BY nachname, vorname';
$zeile=1;
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
$i=0;
writecol($zeile, $i++, $row->titelpre);
writecol($zeile, $i++, $row->vorname);
writecol($zeile, $i++, $row->nachname);
writecol($zeile, $i++, $row->titelpost);
writecol($zeile, $i++, $row->vorsitz);
writecol($zeile, $i++, $row->pruefer1);
writecol($zeile, $i++, $row->pruefer2);
writecol($zeile, $i++, $row->pruefer3);
writecol($zeile, $i++, $row->bezeichnung);
writecol($zeile, $i++, $row->beschreibung);
writecol($zeile, $i++, $row->datum);
writecol($zeile, $i++, $row->sponsion);
writecol($zeile, $i++, $row->anmerkung);
$zeile++;
}
}
else
die('Fehler in Qry: '.$qry);
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
/**
* Exportiert die Abschlusspruefungen in ein Excel File.
* Die zu exportierenden Spalten werden per GET uebergeben.
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/datum.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
$db = new basis_db();
$user = get_uid();
$datum_obj = new datum();
loadVariables($user);
/**
* Schreibt eine Spalte ins Excel und speichert die maximale Spaltenbreite
*
* @param int $zeile Zeile im Excel.
* @param int $i Spalte im Excel.
* @param string $content Inhalt.
* @return void
*/
function writecol($zeile, $i, $content)
{
global $worksheet, $maxlength;
$worksheet->write($zeile, $i, $content);
if(mb_strlen($content) > $maxlength[$i])
$maxlength[$i] = mb_strlen($content);
}
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$semester = isset($_GET['semester'])?$_GET['semester']:'';
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
if($studiengang_kz == '')
die('studiengang_kz is not set');
if($studiensemester_kurzbz == '')
die('studiensemester_kurzbz is not set');
$maxlength = array();
$zeile = 1;
if(!$rechte->isBerechtigt('student/stammdaten', $studiengang_kz, 's'))
die($rechte->errormsg);
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Abschlusspruefung". "_".date("d_m_Y").".xls");
$workbook->setVersion(8);
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Abschlusspruefung");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
$stsem = new studiensemester();
$stsem->load($studiensemester_kurzbz);
//Zeilenueberschriften ausgeben
$headline = array('Titelpre', 'Vorname', 'Nachname', 'Titelpost', 'Vorsitz', 'Pruefer1', 'Pruefer2', 'Pruefer3',
'Abschlussbeurteilung', 'Typ', 'Datum', 'Sponsion', 'Anmerkung');
$i = 0;
foreach ($headline as $title)
{
$worksheet->write(0, $i, $title, $format_bold);
$maxlength[$i] = mb_strlen($title);
$i++;
}
// Daten holen
$qry = "SELECT
titelpre, vorname, nachname, titelpost,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'')
|| ' ' || COALESCE(titelpost,'') FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id)
WHERE uid=vorsitz) as vorsitz,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'')
|| ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer1) as pruefer1,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'')
|| ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer2) as pruefer2,
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' '
|| COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=pruefer3) as pruefer3,
(SELECT bezeichnung FROM lehre.tbl_abschlussbeurteilung
WHERE tbl_abschlussbeurteilung.abschlussbeurteilung_kurzbz
= tbl_abschlusspruefung.abschlussbeurteilung_kurzbz) as bezeichnung,
tbl_pruefungstyp.beschreibung, datum, sponsion, tbl_abschlusspruefung.anmerkung
FROM
lehre.tbl_abschlusspruefung, public.tbl_studentlehrverband, public.tbl_benutzer, public.tbl_person,
lehre.tbl_pruefungstyp
WHERE
tbl_abschlusspruefung.student_uid=public.tbl_studentlehrverband.student_uid AND
tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND
tbl_studentlehrverband.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
tbl_benutzer.uid = tbl_abschlusspruefung.student_uid AND
tbl_person.person_id = tbl_benutzer.person_id AND
tbl_abschlusspruefung.pruefungstyp_kurzbz = tbl_pruefungstyp.pruefungstyp_kurzbz
";
if ($semester != '')
$qry .= " AND tbl_studentlehrverband.semester=".$db->db_add_param($semester);
$qry .= ' ORDER BY nachname, vorname';
$zeile = 1;
if ($db->db_query($qry))
{
while ($row = $db->db_fetch_object())
{
$i = 0;
writecol($zeile, $i++, $row->titelpre);
writecol($zeile, $i++, $row->vorname);
writecol($zeile, $i++, $row->nachname);
writecol($zeile, $i++, $row->titelpost);
writecol($zeile, $i++, $row->vorsitz);
writecol($zeile, $i++, $row->pruefer1);
writecol($zeile, $i++, $row->pruefer2);
writecol($zeile, $i++, $row->pruefer3);
writecol($zeile, $i++, $row->bezeichnung);
writecol($zeile, $i++, $row->beschreibung);
writecol($zeile, $i++, $row->datum);
writecol($zeile, $i++, $row->sponsion);
writecol($zeile, $i++, $row->anmerkung);
$zeile++;
}
}
else
die('Fehler bei Datenbankabfrage');
//Die Breite der Spalten setzen
foreach($maxlength as $i => $breite)
$worksheet->setColumn($i, $i, $breite + 2);
$workbook->close();
+83 -73
View File
@@ -29,13 +29,24 @@ require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if (!$rechte->isBerechtigt('student/stammdaten', null, 's'))
die($rechte->errormsg);
//Parameter holen
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
$db = new basis_db();
if($studiensemester_kurzbz!='')
if ($studiensemester_kurzbz != '')
{
if (!check_stsem($studiensemester_kurzbz))
die('Studiensemester is ungueltig');
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
$workbook->setVersion(8);
@@ -45,113 +56,112 @@ if($studiensemester_kurzbz!='')
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Absolventenstatistik");
$worksheet->setInputEncoding('utf-8');
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$stg_arr=array();
$stg_arr = array();
$studiengang = new studiengang();
$studiengang->getAll('typ, kurzbzlang', false);
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
$spalte=0;
$zeile=0;
$worksheet->write($zeile,$spalte,'Absolventenstatistik '.$studiensemester_kurzbz.' erstellt am '.date("d.m.Y"), $format_bold);
$spalte=0;
$spalte = 0;
$zeile = 0;
$worksheet->write($zeile, $spalte, 'Absolventenstatistik '.$db->convert_html_chars($studiensemester_kurzbz).
' erstellt am '.date("d.m.Y"), $format_bold);
$spalte = 0;
$zeile++;
$worksheet->write($zeile,$spalte,'UID',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'NACHNAME',$format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,'VORNAME',$format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,'STG',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'GESCHLECHT',$format_bold);
$maxlength[$spalte]=10;
$worksheet->write($zeile, $spalte, 'UID', $format_bold);
$maxlength[$spalte] = 3;
$worksheet->write($zeile, ++$spalte, 'NACHNAME', $format_bold);
$maxlength[$spalte] = 8;
$worksheet->write($zeile, ++$spalte, 'VORNAME', $format_bold);
$maxlength[$spalte] = 7;
$worksheet->write($zeile, ++$spalte, 'STG', $format_bold);
$maxlength[$spalte] = 3;
$worksheet->write($zeile, ++$spalte, 'GESCHLECHT', $format_bold);
$maxlength[$spalte] = 10;
// Daten holen
$qry = "SELECT
uid, vorname, nachname, studiengang_kz, geschlecht
FROM
campus.vw_student
WHERE
public.get_rolle_prestudent (prestudent_id, '$studiensemester_kurzbz')='Absolvent'
$qry = "SELECT
uid, vorname, nachname, studiengang_kz, geschlecht
FROM
campus.vw_student
WHERE
public.get_rolle_prestudent (prestudent_id, ".$db->db_add_param($studiensemester_kurzbz).")='Absolvent'
ORDER BY studiengang_kz, nachname, vorname";
if($db->db_query($qry))
if ($db->db_query($qry))
{
while($row = $db->db_fetch_object())
while ($row = $db->db_fetch_object())
{
$zeile++;
$spalte=0;
$worksheet->write($zeile,$spalte,$row->uid);
if(strlen($row->uid)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->uid);
$worksheet->write($zeile,++$spalte, $row->nachname);
if(strlen($row->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->nachname);
$worksheet->write($zeile,++$spalte, $row->vorname);
if(strlen($row->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->vorname);
$worksheet->write($zeile,++$spalte, $stg_arr[$row->studiengang_kz]);
if(strlen($stg_arr[$row->studiengang_kz])>$maxlength[$spalte])
$maxlength[$spalte]=strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$spalte, $row->geschlecht);
if(strlen($row->geschlecht)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->geschlecht);
$spalte = 0;
$worksheet->write($zeile, $spalte, $row->uid);
if (strlen($row->uid) > $maxlength[$spalte])
$maxlength[$spalte] = strlen($row->uid);
$worksheet->write($zeile, ++$spalte, $row->nachname);
if (strlen($row->nachname) > $maxlength[$spalte])
$maxlength[$spalte] = strlen($row->nachname);
$worksheet->write($zeile, ++$spalte, $row->vorname);
if (strlen($row->vorname) > $maxlength[$spalte])
$maxlength[$spalte] = strlen($row->vorname);
$worksheet->write($zeile, ++$spalte, $stg_arr[$row->studiengang_kz]);
if (strlen($stg_arr[$row->studiengang_kz]) > $maxlength[$spalte])
$maxlength[$spalte] = strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile, ++$spalte, $row->geschlecht);
if (strlen($row->geschlecht) > $maxlength[$spalte])
$maxlength[$spalte] = strlen($row->geschlecht);
}
}
else
die('Fehlerhafte Qry:'.$qry);
else
die('Fehler bei Datenbankabfrage');
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
foreach($maxlength as $i => $breite)
$worksheet->setColumn($i, $i, $breite + 2);
$workbook->close();
}
else
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
echo '<!DOCTYPE HTML>
<html>
<head>
<title>Absolventen</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<title>Absolventen</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Absolventenstatistik</h2>
';
echo '<form method="GET" action="'.$_SERVER['PHP_SELF'].'">';
echo 'Studiensemester: <SELECT name="studiensemester_kurzbz">';
$stsem = new studiensemester();
$stsem_akt = $stsem->getaktorNext();
$stsem->getAll();
foreach ($stsem->studiensemester as $row)
{
if($row->studiensemester_kurzbz==$stsem_akt)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</OPTION>";
if ($row->studiensemester_kurzbz == $stsem_akt)
$selected = 'selected';
else
$selected = '';
echo "\n<OPTION value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</OPTION>";
}
echo "</SELECT>";
echo " <input type='submit' value='Erstellen'>";
echo "</form></body></html>";
}
?>
+192 -117
View File
@@ -21,7 +21,7 @@
*/
/*
* Erstellt eine Liste mit den Absolventen eines Studiensemesters
* Aufteilung in
* Aufteilung in
* - Anzahl Gesamt
* - Prozent Anteil
* - Vollzeit/Berufsbegleitend
@@ -33,6 +33,12 @@ require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('student/stammdaten', null, 's'))
die($rechte->errormsg);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
@@ -40,39 +46,54 @@ else
$stsem_obj = new studiensemester();
$stsem = $stsem_obj->getaktorNext();
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
$db = new basis_db();
echo '<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<meta charset="UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">';
include('../../include/meta/jquery.php');
include('../../include/meta/jquery-tablesorter.php');
echo '
<script language="Javascript">
$(document).ready(function()
{
$("#t1").tablesorter(
{
widgets: ["zebra"]
});
$("#t2").tablesorter(
{
widgets: ["zebra"]
});
});
</script>
</head>
<body>';
echo "<h2>AbsolventInnenstatistik ".$db->convert_html_chars($stsem);
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester();
$studsem->getAll();
echo "<h2>AbsolventInnenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester();
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
foreach ($studsem->studiensemester as $stsemester)
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
if($stsemester->studiensemester_kurzbz == $stsem)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>';
echo $stsemester->studiensemester_kurzbz;
echo '</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if ($stsem != '')
{
echo "<table id='t1'>
<thead>
<tr>
<th></th>
@@ -98,34 +119,59 @@ if($stsem!='')
";
//Bachelor
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) a) AS gesamt_stg,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND typ='b'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND typ='b'
) a) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND orgform_kurzbz='BB'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND orgform_kurzbz='VZ'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='w'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND nation_code='A'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id)
JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND eu AND nation_code<>'A'
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id)
JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
AND geschlecht='m' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND NOT eu
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id)
JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
@@ -133,25 +179,24 @@ if($stsem!='')
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='b'
ORDER BY typ, kurzbzlang; ";
$db = new basis_db();
if($db->db_query($qry))
if ($db->db_query($qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = $db->db_fetch_object())
$gesamt = 0;
$gesamt_prozent = 0;
$gesamt_bb = 0;
$gesamt_vz = 0;
$gesamt_m = 0;
$gesamt_w = 0;
$gesamt_at = 0;
$gesamt_eu = 0;
$gesamt_noteu = 0;
while ($row = $db->db_fetch_object())
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".mb_strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
$prozent = ($row->gesamt_alle != 0?$row->gesamt_stg / $row->gesamt_alle * 100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m</td>";
@@ -159,9 +204,9 @@ if($stsem!='')
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
echo "</tr>\n";
$gesamt += $row->gesamt_stg;
$gesamt_prozent += $prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
@@ -180,52 +225,82 @@ if($stsem!='')
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
echo "</tr>\n";
}
echo '</tbody>
</table>';
//Master
echo '
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m</th>
<th>w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>';
echo "<table id='t2'>
<thead>
<tr>
<th></th>
<th></th>
<th>Anteil an Gesamt</th>
<th>Studienart</th>
<th colspan=2>Geschlecht</th>
<th colspan=3>Staatsb&uuml;rgerschaft</th>
</tr>
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m</th>
<th>w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>
</thead>
<tbody>
";
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
) AS gesamt_stg,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND orgform_kurzbz='BB'
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND orgform_kurzbz='BB'
) AS bb,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND orgform_kurzbz='VZ'
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND orgform_kurzbz='VZ'
) AS vz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='w'
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='w'
) AS w,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m'
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m'
) AS m,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND nation_code='A'
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m' AND nation_code='A'
) AS herkunft_at,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND eu AND nation_code<>'A'
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)."
AND geschlecht='m' AND eu AND nation_code<>'A'
) AS herkunft_eu,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='".addslashes($stsem)."' AND geschlecht='m' AND NOT eu
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent'
AND studiensemester_kurzbz=".$db->db_add_param($stsem)." AND geschlecht='m' AND NOT eu
) AS herkunft_noteu,
true
FROM
@@ -233,25 +308,25 @@ if($stsem!='')
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='m'
ORDER BY typ, kurzbzlang; ";
if($db->db_query($qry))
if ($db->db_query($qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = $db->db_fetch_object())
$gesamt = 0;
$gesamt_prozent = 0;
$gesamt_bb = 0;
$gesamt_vz = 0;
$gesamt_m = 0;
$gesamt_w = 0;
$gesamt_at = 0;
$gesamt_eu = 0;
$gesamt_noteu = 0;
while ($row = $db->db_fetch_object())
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".mb_strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
$prozent = ($row->gesamt_alle != 0?$row->gesamt_stg / $row->gesamt_alle * 100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m</td>";
@@ -259,9 +334,9 @@ if($stsem!='')
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
echo "</tr>\n";
$gesamt += $row->gesamt_stg;
$gesamt_prozent += $prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
@@ -270,6 +345,7 @@ if($stsem!='')
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
@@ -280,8 +356,7 @@ if($stsem!='')
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
echo "</tr>\n";
}
echo '</tbody></table>';
}