mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 16:32:20 +00:00
Statistiken gegendert und Benutzerberechtigungen hinzugefügt.
This commit is contained in:
@@ -24,10 +24,17 @@ require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/studiengang.class.php');
|
||||
require_once('../../include/fachbereich.class.php');
|
||||
require_once('../../include/Excel/excel.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
loadVariables($user);
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/vilesci'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
$stsem = (isset($_GET['stsem'])?$_GET['stsem']:$semester_aktuell);
|
||||
$format = (isset($_GET['format'])?$_GET['format']:'');
|
||||
|
||||
@@ -46,27 +53,31 @@ foreach ($fachbereich->result as $row)
|
||||
$fb_arr[$row->fachbereich_kurzbz]=$row->bezeichnung;
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
// ALVS pro Fachbereich
|
||||
$qry = "
|
||||
SELECT * FROM (
|
||||
SELECT
|
||||
fachbereich_kurzbz, tbl_lehrveranstaltung.studiengang_kz, sum(tbl_lehreinheitmitarbeiter.semesterstunden) as semesterstunden
|
||||
fachbereich_kurzbz, tbl_lehrveranstaltung.studiengang_kz, geschlecht,sum(tbl_lehreinheitmitarbeiter.semesterstunden) as semesterstunden
|
||||
FROM
|
||||
lehre.tbl_lehreinheit,
|
||||
lehre.tbl_lehrveranstaltung,
|
||||
lehre.tbl_lehrveranstaltung as lehrfach,
|
||||
public.tbl_fachbereich,
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
lehre.tbl_lehreinheitmitarbeiter,
|
||||
public.tbl_benutzer,
|
||||
public.tbl_person
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_lehreinheit.lehrveranstaltung_id AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND
|
||||
tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid = tbl_benutzer.uid AND
|
||||
tbl_benutzer.person_id = tbl_person.person_id AND
|
||||
tbl_lehreinheitmitarbeiter.semesterstunden<>0 AND
|
||||
tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz AND
|
||||
faktor<>0 AND
|
||||
stundensatz<>0 AND
|
||||
tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id
|
||||
GROUP BY fachbereich_kurzbz, tbl_lehrveranstaltung.studiengang_kz
|
||||
GROUP BY fachbereich_kurzbz, geschlecht, tbl_lehrveranstaltung.studiengang_kz
|
||||
) as a JOIN public.tbl_studiengang USING(studiengang_kz)
|
||||
ORDER BY typ, tbl_studiengang.kurzbz, fachbereich_kurzbz
|
||||
";
|
||||
@@ -80,34 +91,37 @@ while($row = $db->db_fetch_object())
|
||||
{
|
||||
if(!in_array($row->fachbereich_kurzbz, $fachbereiche))
|
||||
$fachbereiche[] = $row->fachbereich_kurzbz;
|
||||
$data[$row->studiengang_kz][$row->fachbereich_kurzbz]=$row->semesterstunden;
|
||||
$data[$row->studiengang_kz][$row->fachbereich_kurzbz][$row->geschlecht]=$row->semesterstunden;
|
||||
}
|
||||
|
||||
sort($fachbereiche);
|
||||
|
||||
//Betreuerstunden
|
||||
$qry = "
|
||||
SELECT
|
||||
studiengang_kz, sum(stunden) as stunden
|
||||
studiengang_kz, geschlecht, sum(stunden) as stunden
|
||||
FROM
|
||||
lehre.tbl_projektarbeit,
|
||||
lehre.tbl_lehrveranstaltung,
|
||||
lehre.tbl_lehreinheit,
|
||||
lehre.tbl_projektbetreuer
|
||||
lehre.tbl_projektbetreuer,
|
||||
public.tbl_person
|
||||
WHERE
|
||||
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
|
||||
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
|
||||
tbl_projektbetreuer.person_id=tbl_person.person_id AND
|
||||
tbl_projektbetreuer.faktor<>0 AND
|
||||
tbl_projektbetreuer.stunden<>0 AND
|
||||
tbl_projektbetreuer.stundensatz<>0 AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)."
|
||||
GROUP BY studiengang_kz";
|
||||
GROUP BY studiengang_kz,geschlecht";
|
||||
|
||||
if(!$result = $db->db_query($qry))
|
||||
die('Fehler bei DB-Abfrage');
|
||||
|
||||
while($row = $db->db_fetch_object())
|
||||
$data[$row->studiengang_kz]['betreuungen']=$row->stunden;
|
||||
$data[$row->studiengang_kz]['betreuungen'][$row->geschlecht]=$row->stunden;
|
||||
|
||||
if($format=='xls')
|
||||
{
|
||||
@@ -119,7 +133,8 @@ if($format=='xls')
|
||||
$workbook->setVersion(8);
|
||||
// Creating a worksheet
|
||||
$worksheet =& $workbook->addWorksheet("ALVSStatistik");
|
||||
$worksheet->setInputEncoding('utf-8');
|
||||
$worksheet->setInputEncoding("utf-8");
|
||||
$worksheet->setRow(0,250.50);
|
||||
//Formate Definieren
|
||||
$format_bold =& $workbook->addFormat();
|
||||
$format_bold->setBold();
|
||||
@@ -130,8 +145,25 @@ if($format=='xls')
|
||||
|
||||
$format_rotate =& $workbook->addFormat();
|
||||
$format_rotate->setTextRotation(270);
|
||||
$format_rotate->setAlign('center');
|
||||
$format_rotate->setAlign("center");
|
||||
$format_rotate->setBold();
|
||||
|
||||
$format_m_w =& $workbook->addFormat();
|
||||
$format_m_w->setAlign("center");
|
||||
$format_m_w->setBold();
|
||||
|
||||
$format_data =& $workbook->addFormat();
|
||||
$format_data->setNumFormat("0.00");
|
||||
|
||||
$format_bold_data =& $workbook->addFormat();
|
||||
$format_bold_data->setBold();
|
||||
$format_bold_data->setNumFormat("0.00");
|
||||
$format_bold_data->setVAlign("vcenter");
|
||||
|
||||
$format_bold_center_data =& $workbook->addFormat();
|
||||
$format_bold_center_data->setBold();
|
||||
$format_bold_center_data->setNumFormat("0.00");
|
||||
$format_bold_center_data->setAlign("center");
|
||||
|
||||
$spalte=0;
|
||||
$zeile=0;
|
||||
@@ -142,19 +174,53 @@ if($format=='xls')
|
||||
$summe_fb = array();
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
$zeile=0;
|
||||
$worksheet->write($zeile,++$spalte,$fb_arr[$fb], $format_rotate);
|
||||
$worksheet->mergeCells($zeile,$spalte,0,$spalte+1);
|
||||
$fachbereiche[$fb]=$spalte;
|
||||
$maxlength[$spalte]=3;
|
||||
$summe_fb[$fb]=0;
|
||||
|
||||
$worksheet->write(++$zeile,$spalte,'m',$format_m_w);
|
||||
$worksheet->write($zeile,++$spalte,'w',$format_m_w);
|
||||
|
||||
//$fachbereiche[$fb]=$spalte;
|
||||
$summe_fb[$fb]=array();
|
||||
//++$spalte;
|
||||
$maxlength[$spalte]=7;
|
||||
$maxlength[$spalte-1]=7;
|
||||
}
|
||||
$worksheet->write($zeile,++$spalte,'Betreuerstunden', $format_rotate);
|
||||
$fachbereiche['betreuungen']=$spalte;
|
||||
$maxlength[$spalte]=3;
|
||||
$summe_fb['betreuungen']=0;
|
||||
|
||||
$zeile=0;
|
||||
$worksheet->write($zeile,++$spalte,'Betreuungen', $format_rotate);
|
||||
$worksheet->mergeCells($zeile,$spalte,0,$spalte+1);
|
||||
|
||||
$worksheet->write(++$zeile,$spalte,'m',$format_m_w);
|
||||
$worksheet->write($zeile,++$spalte,'w',$format_m_w);
|
||||
|
||||
$maxlength[$spalte]=7;
|
||||
$maxlength[$spalte-1]=7;
|
||||
|
||||
$fachbereiche['betreuungen']=$spalte-1;
|
||||
//$maxlength[$spalte]=3;
|
||||
$summe_fb['betreuungen']=array();
|
||||
//++$spalte;
|
||||
|
||||
$zeile=0;
|
||||
$worksheet->write($zeile,++$spalte,'Summe', $format_rotate);
|
||||
$worksheet->mergeCells($zeile,$spalte,0,$spalte+2);
|
||||
$worksheet->write(++$zeile,$spalte,'m',$format_m_w);
|
||||
$worksheet->write($zeile,++$spalte,'w',$format_m_w);
|
||||
$worksheet->write($zeile,++$spalte,'Gesamt',$format_m_w);
|
||||
|
||||
$maxspalten=$spalte;
|
||||
|
||||
|
||||
/*++$zeile;
|
||||
$spalte=0;
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
$worksheet->write($zeile,++$spalte,'m');
|
||||
$worksheet->write($zeile,++$spalte,'w');
|
||||
//$fachbereiche[$fb]=$spalte;
|
||||
//++$spalte;
|
||||
}*/
|
||||
|
||||
if(isset($data))
|
||||
{
|
||||
@@ -163,26 +229,43 @@ if($format=='xls')
|
||||
$zeile++;
|
||||
$spalte=0;
|
||||
$worksheet->write($zeile,$spalte,$stg_arr[$key], $format_bold);
|
||||
$summe=0;
|
||||
$summe_m=0;
|
||||
$summe_w=0;
|
||||
foreach ($data[$key] as $fb=>$stunden)
|
||||
{
|
||||
$summe+=$stunden;
|
||||
$summe_fb[$fb]+=$stunden;
|
||||
$worksheet->write($zeile,$fachbereiche[$fb],$stunden);
|
||||
if($maxlength[$fachbereiche[$fb]]<strlen($stunden))
|
||||
$maxlength[$fachbereiche[$fb]]=strlen($stunden);
|
||||
$summe_m+=$stunden['m'];
|
||||
$summe_fb[$fb]['m']+=$stunden['m'];
|
||||
$worksheet->write($zeile,$fachbereiche[$fb],$stunden['m'],$format_data);
|
||||
//if($maxlength[$fachbereiche[$fb]]<strlen($stunden['m']))
|
||||
// $maxlength[$fachbereiche[$fb]]=strlen($stunden['m']);
|
||||
|
||||
$summe_w+=$stunden['w'];
|
||||
$summe_fb[$fb]['w']+=$stunden['w'];
|
||||
$worksheet->write($zeile,$fachbereiche[$fb]+1,$stunden['w'],$format_data);
|
||||
//if($maxlength[$fachbereiche[$fb]]<strlen($stunden['w']))
|
||||
// $maxlength[$fachbereiche[$fb]]=strlen($stunden['w']);
|
||||
}
|
||||
$worksheet->write($zeile,$maxspalten,$summe, $format_bold);
|
||||
$worksheet->write($zeile,$maxspalten-2,number_format($summe_m,2,'.',''), $format_bold_data);
|
||||
$worksheet->write($zeile,$maxspalten-1,number_format($summe_w,2,'.',''), $format_bold_data);
|
||||
$gesamt = $summe_m + $summe_w;
|
||||
$worksheet->write($zeile,$maxspalten,number_format($gesamt,2,'.',''), $format_bold_data);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$zeile++;
|
||||
$worksheet->write($zeile,0,'Summe', $format_bold);
|
||||
$worksheet->write($zeile,0,'Summe', $format_bold_data);
|
||||
$worksheet->mergeCells($zeile,0,$zeile+1,0);
|
||||
//foreach ($summe_fb as $fb=>$summe)
|
||||
foreach ($summe_fb as $fb=>$summe)
|
||||
{
|
||||
if(isset($fachbereiche[$fb]))
|
||||
$worksheet->write($zeile,$fachbereiche[$fb],$summe, $format_bold);
|
||||
$worksheet->write($zeile,$fachbereiche[$fb],number_format($summe['m'],2,'.',''), $format_bold_center_data);
|
||||
$worksheet->write($zeile,$fachbereiche[$fb]+1,number_format($summe['w'],2,'.',''), $format_bold_center_data);
|
||||
$gesamt = $summe['m']+$summe['w'];
|
||||
$worksheet->write(++$zeile,$fachbereiche[$fb],number_format($gesamt,2,'.',''), $format_bold_center_data);
|
||||
$worksheet->mergeCells($zeile,$fachbereiche[$fb],$zeile,$fachbereiche[$fb]+1);
|
||||
--$zeile;
|
||||
}
|
||||
|
||||
//Die Breite der Spalten setzen
|
||||
@@ -201,9 +284,13 @@ else
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<style type="text/css">
|
||||
td, th
|
||||
th
|
||||
{
|
||||
border: 1px solid black;
|
||||
padding: 0 10px 0 10px;
|
||||
}
|
||||
td
|
||||
{
|
||||
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@@ -213,69 +300,122 @@ else
|
||||
|
||||
echo "<h2>ALVS $stsem</h2>";
|
||||
|
||||
echo '<table class="liste" style="border: 1px solid black" cellspacing="0"><tr class="liste"><th>'.$stsem.'</th>';
|
||||
echo '<table class="liste" style="border: 1px solid black" rules="all" cellspacing="0">';
|
||||
echo '<tr class="liste"><th>'.$stsem.'</th>';
|
||||
$summe_fb = array();
|
||||
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
echo "<th>".$fb_arr[$fb]."</th>";
|
||||
$summe_fb[$fb]=0;
|
||||
echo "<th colspan='2'>".$fb_arr[$fb]."</th>";
|
||||
$summe_fb[$fb]=array();
|
||||
}
|
||||
echo "<th>Betreuungen</th>";
|
||||
$summe_fb['betreuungen']=0;
|
||||
echo "<th>Summe</th>";
|
||||
echo "<th colspan='2'>Betreuungen</th>";
|
||||
$summe_fb['betreuungen']=array();
|
||||
echo "<th colspan='3'>Summe</th>";
|
||||
echo "</tr>";
|
||||
// Spalten m/w
|
||||
echo '<tr class="liste"><td> </td>';
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
echo "<td style='text-align:center; font-weight: bold; width: 50%'>m</td><td style='text-align:center; font-weight: bold;'>w</td>";
|
||||
}
|
||||
echo "<td style='text-align:center; font-weight: bold; width: 33%'>m</td>";
|
||||
echo "<td style='text-align:center; font-weight: bold; width: 33%'>w</td>";
|
||||
//$summe_fb['betreuungen']=0;
|
||||
echo "<td style='text-align:center; font-weight: bold; width: 33%'>m</td>";
|
||||
echo "<td style='text-align:center; font-weight: bold; width: 33%'>w</td>";
|
||||
echo "<td style='text-align:center; font-weight: bold'>Gesamt</td>";
|
||||
echo "</tr>";
|
||||
|
||||
foreach ($data as $key=>$val)
|
||||
{
|
||||
echo "<tr>";
|
||||
echo "<td>".$stg_arr[$key]."</td>";
|
||||
$summe =0;
|
||||
$summe_m =0;
|
||||
$summe_w =0;
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
echo "<td>";
|
||||
if(isset($data[$key][$fb]))
|
||||
if(isset($data[$key][$fb]["m"]))
|
||||
{
|
||||
$summe+=$data[$key][$fb];
|
||||
$summe_fb[$fb]+=$data[$key][$fb];
|
||||
echo $data[$key][$fb];
|
||||
$summe_m+=$data[$key][$fb]["m"];
|
||||
$summe_fb[$fb]["m"]+=$data[$key][$fb]["m"];
|
||||
echo "<td>".$data[$key][$fb]["m"]."</td>";
|
||||
}
|
||||
else
|
||||
echo " ";
|
||||
echo "</td>";
|
||||
echo "<td> </td>";
|
||||
if(isset($data[$key][$fb]["w"]))
|
||||
{
|
||||
$summe_w+=$data[$key][$fb]["w"];
|
||||
$summe_fb[$fb]["w"]+=$data[$key][$fb]["w"];
|
||||
echo "<td>".$data[$key][$fb]["w"]."</td>";
|
||||
}
|
||||
else
|
||||
echo "<td> </td>";
|
||||
}
|
||||
|
||||
echo "<td>";
|
||||
if(isset($data[$key]['betreuungen']))
|
||||
if(isset($data[$key]['betreuungen']['m']))
|
||||
{
|
||||
echo number_format($data[$key]['betreuungen'],2);
|
||||
$summe_fb['betreuungen']+=$data[$key]['betreuungen'];
|
||||
echo "<td>".number_format($data[$key]['betreuungen']['m'],2)."</td>";
|
||||
$summe_fb['betreuungen']['m']+=$data[$key]['betreuungen']['m'];
|
||||
$summe_m+=$data[$key]['betreuungen']['m'];
|
||||
}
|
||||
else
|
||||
echo " ";
|
||||
echo "<td> </td>";
|
||||
if(isset($data[$key]['betreuungen']['w']))
|
||||
{
|
||||
echo "<td>".number_format($data[$key]['betreuungen']['w'],2)."</td>";
|
||||
$summe_fb['betreuungen']['w']+=$data[$key]['betreuungen']['w'];
|
||||
$summe_w+=$data[$key]['betreuungen']['w'];
|
||||
}
|
||||
else
|
||||
echo "<td> </td>";
|
||||
echo "</td>";
|
||||
echo "<td><b>$summe</b></td>";
|
||||
echo "<td><b>$summe_m</b></td>";
|
||||
echo "<td><b>$summe_w</b></td>";
|
||||
echo "<td><b>".($summe_m+$summe_w)."</b></td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
|
||||
echo "<tr>";
|
||||
echo "<td>Summe</td>";
|
||||
echo "<td rowspan='2'>Summe</td>";
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
echo "<td><b>";
|
||||
if(isset($summe_fb[$fb]))
|
||||
echo $summe_fb[$fb];
|
||||
if(isset($summe_fb[$fb]["m"]))
|
||||
echo "<td style='text-align:center; font-weight: bold'>".$summe_fb[$fb]["m"]."</td>";
|
||||
else
|
||||
echo " ";
|
||||
echo "</b></td>";
|
||||
echo "<td> </td>";
|
||||
if(isset($summe_fb[$fb]["w"]))
|
||||
echo "<td style='text-align:center; font-weight: bold'>".$summe_fb[$fb]["w"]."</td>";
|
||||
else
|
||||
echo "<td> </td>";
|
||||
}
|
||||
echo "<td><b>";
|
||||
if(isset($summe_fb['betreuungen']))
|
||||
echo number_format($summe_fb['betreuungen'],2);
|
||||
else
|
||||
echo " ";
|
||||
echo "</b></td>";
|
||||
if(isset($summe_fb['betreuungen']['m']))
|
||||
echo "<td style='text-align:center; font-weight: bold'>".number_format($summe_fb['betreuungen']['m'],2)."</td>";
|
||||
else
|
||||
echo "<td> </td>";
|
||||
if(isset($summe_fb['betreuungen']['w']))
|
||||
echo "<td style='text-align:center; font-weight: bold'>".number_format($summe_fb['betreuungen']['w'],2)."</td>";
|
||||
else
|
||||
echo "<td> </td>";
|
||||
echo "<td colspan='3'> </td>";
|
||||
echo "</tr>";
|
||||
|
||||
echo "<tr>";
|
||||
//echo "<td></td>";
|
||||
foreach ($fachbereiche as $fb)
|
||||
{
|
||||
if(isset($summe_fb[$fb]["m"]) || isset($summe_fb[$fb]["w"]))
|
||||
echo "<td colspan='2' style='text-align:center; font-weight: bold'>".($summe_fb[$fb]["m"] + $summe_fb[$fb]["w"])."</td>";
|
||||
else
|
||||
echo "<td colspan='2'> </td>";
|
||||
}
|
||||
if(isset($summe_fb['betreuungen']['m']) || isset($summe_fb['betreuungen']['w']))
|
||||
echo "<td colspan='2' style='text-align:center; font-weight: bold'>".number_format(($summe_fb['betreuungen']['m'] + $summe_fb['betreuungen']['w']),2)."</td>";
|
||||
else
|
||||
echo "<td colspan='2'> </td>";
|
||||
echo "<td colspan='3'> </td>";
|
||||
echo "</tr>";
|
||||
|
||||
echo '</table>';
|
||||
echo '</body>
|
||||
</html>';
|
||||
|
||||
@@ -23,12 +23,19 @@ require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/studiengang.class.php');
|
||||
require_once('../../include/Excel/excel.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
loadVariables($user);
|
||||
$db = new basis_db();
|
||||
$stsem = $semester_aktuell;
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/vilesci'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
$format = (isset($_GET['format'])?$_GET['format']:'');
|
||||
|
||||
$studiengang = new studiengang();
|
||||
@@ -86,6 +93,7 @@ if($format=='xls')
|
||||
$format_bold->setBold();
|
||||
$format_bold->setBorder(1);
|
||||
$format_bold->setAlign("center");
|
||||
$format_bold->setVAlign("vcenter");
|
||||
|
||||
$format_border =& $workbook->addFormat();
|
||||
$format_border->setBorder(1);
|
||||
@@ -114,6 +122,8 @@ if($format=='xls')
|
||||
$worksheet->write(0,15,'8', $format_bold);
|
||||
$worksheet->mergeCells(0,15,0,16);
|
||||
$worksheet->write(0,17,'Gesamt*', $format_bold);
|
||||
$worksheet->mergeCells(0,17,0,19);
|
||||
$worksheet->write(0,19,'', $format_bold);
|
||||
|
||||
//Überschriften 2. Zeile
|
||||
$spalte=0;
|
||||
@@ -135,13 +145,21 @@ if($format=='xls')
|
||||
$worksheet->write($zeile+1,++$spalte,'w', $format_bold);
|
||||
$worksheet->write($zeile+1,++$spalte,'m', $format_bold);
|
||||
$worksheet->write($zeile+1,++$spalte,'w', $format_bold);
|
||||
$worksheet->write($zeile+1,++$spalte,'m', $format_bold);
|
||||
$worksheet->write($zeile+1,++$spalte,'w', $format_bold);
|
||||
$worksheet->write($zeile+1,++$spalte,'', $format_bold);
|
||||
|
||||
//Tabellendaten
|
||||
$summe_m_[] = array();
|
||||
$summe_m_[0] = 0;
|
||||
$summe_w_[] = array();
|
||||
$summe_w_[0] = 0;
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$zeile++;
|
||||
$spalte=0;
|
||||
$summe_m = 0;
|
||||
$summe_w = 0;
|
||||
$worksheet->setColumn($spalte,$spalte,15);
|
||||
$worksheet->write($zeile+1,$spalte,$stg_arr[$row->studiengang_kz], $format_left);
|
||||
$worksheet->write($zeile+1,++$spalte,($row->s1_m!=0?$row->s1_m:''), $format_border);
|
||||
@@ -160,10 +178,68 @@ if($format=='xls')
|
||||
$worksheet->write($zeile+1,++$spalte,($row->s7_w!=0?$row->s7_w:''), $format_border);
|
||||
$worksheet->write($zeile+1,++$spalte,($row->s8_m!=0?$row->s8_m:''), $format_border);
|
||||
$worksheet->write($zeile+1,++$spalte,($row->s8_w!=0?$row->s8_w:''), $format_border);
|
||||
$summe_m+= $row->s1_m;
|
||||
$summe_m+= $row->s2_m;
|
||||
$summe_m+= $row->s3_m;
|
||||
$summe_m+= $row->s4_m;
|
||||
$summe_m+= $row->s5_m;
|
||||
$summe_m+= $row->s6_m;
|
||||
$summe_m+= $row->s7_m;
|
||||
$summe_m+= $row->s8_m;
|
||||
$summe_w+= $row->s1_w;
|
||||
$summe_w+= $row->s2_w;
|
||||
$summe_w+= $row->s3_w;
|
||||
$summe_w+= $row->s4_w;
|
||||
$summe_w+= $row->s5_w;
|
||||
$summe_w+= $row->s6_w;
|
||||
$summe_w+= $row->s7_w;
|
||||
$summe_w+= $row->s8_w;
|
||||
$worksheet->write($zeile+1,++$spalte,$summe_m, $format_border);
|
||||
$worksheet->write($zeile+1,++$spalte,$summe_w, $format_border);
|
||||
$worksheet->write($zeile+1,++$spalte,$row->all, $format_border);
|
||||
//Pro Semester und Geschlecht eine Variable mit den Summen befüllen
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
$var_m = 's'.$i.'_m';
|
||||
$var_w = 's'.$i.'_w';
|
||||
$summe_m_[$i]+= $row->$var_m;
|
||||
$summe_w_[$i]+= $row->$var_w;
|
||||
}
|
||||
$gesamtsumme+= $row->all;
|
||||
$gesamtsumme_m+= $summe_m;
|
||||
$gesamtsumme_w+= $summe_w;
|
||||
}
|
||||
$spalte=0;
|
||||
$zeile++;
|
||||
$zeile++;
|
||||
//Summenzeile
|
||||
$worksheet->write($zeile,$spalte,'Summe', $format_bold);
|
||||
$worksheet->mergeCells($zeile,$spalte,$zeile+1,$spalte);
|
||||
$worksheet->write($zeile+1,$spalte,'', $format_bold);
|
||||
$spalte++;
|
||||
//Für jede Semestersummenvariable eine Spalte ausgeben
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
$worksheet->write($zeile,$spalte++,$summe_m_[$i], $format_bold);
|
||||
$worksheet->write($zeile,$spalte++,$summe_w_[$i], $format_bold);
|
||||
}
|
||||
$worksheet->write($zeile,$spalte++,$gesamtsumme_m, $format_bold);
|
||||
$worksheet->write($zeile,$spalte++,$gesamtsumme_w, $format_bold);
|
||||
$worksheet->write($zeile,$spalte++,$gesamtsumme, $format_bold);
|
||||
//echo "<td align='center'><b>".$gesamtsumme_m."</b></td>";
|
||||
//echo "<td align='center'><b>".$gesamtsumme_w."</b></td>";
|
||||
//echo "<td rowspan='2' valign='middle' align='center'><b>".$gesamtsumme."</b></td>";
|
||||
$zeile++;
|
||||
$spalte=0;
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
$worksheet->write($zeile,++$spalte,($summe_m_[$i]+$summe_w_[$i]), $format_bold);
|
||||
$worksheet->mergeCells($zeile,$spalte,$zeile,$spalte+1);
|
||||
$worksheet->write($zeile,$spalte+1,'', $format_bold);
|
||||
$spalte++;
|
||||
}
|
||||
$zeile++;
|
||||
$spalte=0;
|
||||
$worksheet->write($zeile+1,$spalte,'* Die Summe addiert nur die Semester 1-8. Falls sich aktiv Studierende im 9. oder 10. Semester befinden, weicht die Summe von den tatsaechlichen Werten ab');
|
||||
$workbook->close();
|
||||
}
|
||||
@@ -185,7 +261,7 @@ else
|
||||
</head>
|
||||
<body class="Background_main">';
|
||||
echo "<h2>Studierende / Semester</h2>";
|
||||
echo '<table class="liste" style="border: 1px solid black" cellspacing="0">
|
||||
echo '<table class="liste" style="border: 1px solid black" rules="all" cellspacing="0">
|
||||
<tr class="liste">
|
||||
<th>'.$stsem.'</th>
|
||||
<th colspan="2">1</th>
|
||||
@@ -196,7 +272,7 @@ else
|
||||
<th colspan="2">6</th>
|
||||
<th colspan="2">7</th>
|
||||
<th colspan="2">8</th>
|
||||
<th>Gesamt*</th>
|
||||
<th colspan="3">Gesamt*</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th> </th>
|
||||
@@ -208,31 +284,89 @@ else
|
||||
<th>m</th><th>w</th>
|
||||
<th>m</th><th>w</th>
|
||||
<th>m</th><th>w</th>
|
||||
<th>m</th>
|
||||
<th>w</th>
|
||||
<th> </th>';
|
||||
|
||||
//Für die Berechnung der Spaltensummen
|
||||
$summe_m_[] = array();
|
||||
$summe_m_[0] = 0;
|
||||
$summe_w_[] = array();
|
||||
$summe_w_[0] = 0;
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$summe_m = 0;
|
||||
$summe_w = 0;
|
||||
echo "<tr>";
|
||||
echo "<td align='left'>".$stg_arr[$row->studiengang_kz]."</td>";
|
||||
echo "<td align='center'>".($row->s1_m!=0?$row->s1_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s1_w!=0?$row->s1_w:' ')."</td>";
|
||||
$summe_m+= $row->s1_m;
|
||||
$summe_w+= $row->s1_w;
|
||||
echo "<td align='center'>".($row->s2_m!=0?$row->s2_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s2_w!=0?$row->s2_w:' ')."</td>";
|
||||
$summe_m+= $row->s2_m;
|
||||
$summe_w+= $row->s2_w;
|
||||
echo "<td align='center'>".($row->s3_m!=0?$row->s3_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s3_w!=0?$row->s3_w:' ')."</td>";
|
||||
$summe_m+= $row->s3_m;
|
||||
$summe_w+= $row->s3_w;
|
||||
echo "<td align='center'>".($row->s4_m!=0?$row->s4_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s4_w!=0?$row->s4_w:' ')."</td>";
|
||||
$summe_m+= $row->s4_m;
|
||||
$summe_w+= $row->s4_w;
|
||||
echo "<td align='center'>".($row->s5_m!=0?$row->s5_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s5_w!=0?$row->s5_w:' ')."</td>";
|
||||
$summe_m+= $row->s5_m;
|
||||
$summe_w+= $row->s5_w;
|
||||
echo "<td align='center'>".($row->s6_m!=0?$row->s6_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s6_w!=0?$row->s6_w:' ')."</td>";
|
||||
$summe_m+= $row->s6_m;
|
||||
$summe_w+= $row->s6_w;
|
||||
echo "<td align='center'>".($row->s7_m!=0?$row->s7_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s7_w!=0?$row->s7_w:' ')."</td>";
|
||||
$summe_m+= $row->s7_m;
|
||||
$summe_w+= $row->s7_w;
|
||||
echo "<td align='center'>".($row->s8_m!=0?$row->s8_m:' ')."</td>";
|
||||
echo "<td align='center'>".($row->s8_w!=0?$row->s8_w:' ')."</td>";
|
||||
$summe_m+= $row->s8_m;
|
||||
$summe_w+= $row->s8_w;
|
||||
echo "<td align='center'>".$summe_m."</td>";
|
||||
echo "<td align='center'>".$summe_w."</td>";
|
||||
echo "<td align='center'>".$row->all."</td>";
|
||||
echo "</tr>";
|
||||
//Pro Semester und Geschlecht eine Variable mit den Summen befüllen
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
$var_m = 's'.$i.'_m';
|
||||
$var_w = 's'.$i.'_w';
|
||||
$summe_m_[$i]+= $row->$var_m;
|
||||
$summe_w_[$i]+= $row->$var_w;
|
||||
}
|
||||
$gesamtsumme+= $row->all;
|
||||
$gesamtsumme_m+= $summe_m;
|
||||
$gesamtsumme_w+= $summe_w;
|
||||
}
|
||||
echo "<tr>";
|
||||
echo "<td rowspan='2'>Summen</td>";
|
||||
//Für jede Semestersummenvariable eine Spalte ausgeben
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
echo "<td align='center'>".$summe_m_[$i]."</td>";
|
||||
echo "<td align='center'>".$summe_w_[$i]."</td>";
|
||||
}
|
||||
echo "<td align='center'><b>".$gesamtsumme_m."</b></td>";
|
||||
echo "<td align='center'><b>".$gesamtsumme_w."</b></td>";
|
||||
echo "<td rowspan='2' valign='middle' align='center'><b>".$gesamtsumme."</b></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr>";
|
||||
for ($i=1;$i<9;$i++)
|
||||
{
|
||||
echo "<td colspan='2' align='center'>".($summe_m_[$i]+$summe_w_[$i])."</td>";
|
||||
}
|
||||
echo "<td align='center'></td>";
|
||||
echo "<td align='center'></td>";
|
||||
echo "</tr>";
|
||||
|
||||
echo '</table>';
|
||||
echo '<br/>* Die Summe addiert nur die Semester 1-8. Falls sich aktiv Studierende im 9. oder 10. Semester befinden, weicht die Summe von den tatsächlichen Werten ab.';
|
||||
|
||||
Reference in New Issue
Block a user