, * Andreas Oesterreicher and * Rudolf Hangl . */ /* * Generiert eine Liste mit den Institutszuordnungen der Mitarbeiter * und einer aufschluesselung ob diese Fixangestellt sind * Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen * Lektoren Namentlich aufscheinen. */ require_once('../../config/vilesci.config.inc.php'); require_once('../../include/studiensemester.class.php'); require_once('../../include/benutzerberechtigung.class.php'); require_once('../../include/functions.inc.php'); require_once('../../include/fachbereich.class.php'); $db = new basis_db(); echo ' '; if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz'])) { $fachbereich = new fachbereich(); if(!$fachbereich->load($_GET['fachbereich_kurzbz'])) die('Institut existiert nicht'); echo "

MitarbeiterInnenstatistik (Hauptzuordnung) - ".$fachbereich->bezeichnung.'

'; $qry = "SELECT distinct uid, anrede, nachname, vorname, titelpre, titelpost, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='m') a) as fix_m, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='w') a) as fix_w FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) ORDER BY nachname, vorname"; if($db->db_query($qry)) { $ausgabe=''; $fix_m=0; $fix_w=0; while($row = $db->db_fetch_object()) { $ausgabe.= ''; $ausgabe.= "$row->anrede"; $ausgabe.= "$row->titelpre"; $ausgabe.= "$row->nachname"; $ausgabe.= "$row->vorname"; $ausgabe.= "$row->titelpost"; $ausgabe.= ""; $fix_w=$row->fix_w; $fix_m=$row->fix_m; } echo (($fix_m)+($fix_w))." Fixangestellte
M: ".$fix_m."
W: ".$fix_w." "; echo $ausgabe; } echo '
Anrede TitelPre Nachname Vorname Titelpost
'; $qry = "SELECT distinct uid, anrede, nachname, vorname, titelpre, titelpost, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='m') a) as extern_m, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='w') a) as extern_w FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz='".addslashes($fachbereich->oe_kurzbz)."' AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) ORDER BY nachname, vorname"; if($db->db_query($qry)) { $ausgabe=''; $extern_m=0; $extern_w=0; while($row = $db->db_fetch_object()) { $ausgabe.= ''; $ausgabe.= "$row->anrede"; $ausgabe.= "$row->titelpre"; $ausgabe.= "$row->nachname"; $ausgabe.= "$row->vorname"; $ausgabe.= "$row->titelpost"; $ausgabe.= ""; $extern_w=$row->extern_w; $extern_m=$row->extern_m; } echo "

".(($extern_m)+($extern_w))." Freiangestellte
M: ".$extern_m."
W: ".$extern_w." "; echo $ausgabe; } echo '
Anrede TitelPre Nachname Vorname Titelpost
'; } else { echo "

MitarbeiterInnenstatistik (Hauptzuordnung)"; echo ''.date('d.m.Y').'


'; echo ''; echo '

'; echo " "; $qry = "SELECT bezeichnung, fachbereich_kurzbz, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='m') a) as fix_m, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='w') a) as fix_w, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='m') a) as extern_m, (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL) AND geschlecht='w') a) as extern_w FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung"; if($result = $db->db_query($qry)) { $gesamt_fix=0; $gesamt_fix_m=0; $gesamt_fix_w=0; $gesamt_extern=0; $gesamt_extern_m=0; $gesamt_extern_w=0; $gesamt_fix_m_nz=0; $gesamt_fix_w_nz=0; $gesamt_extern_m_nz=0; $gesamt_extern_w_nz=0; while($row = $db->db_fetch_object($result)) { if(($row->fix_m==0 && $row->fix_w==0) && ($row->extern_m==0 && $row->extern_w==0)) { continue; } echo ''; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; $gesamt_fix_m+=$row->fix_m; $gesamt_fix_w+=$row->fix_w; $gesamt_fix+=(($row->fix_m)+($row->fix_w)); $gesamt_extern_m+=$row->extern_m; $gesamt_extern_w+=$row->extern_w; $gesamt_extern+=(($row->extern_m)+($row->extern_w)); } $qry = "SELECT (SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung' AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL)) AND aktiv AND fixangestellt AND geschlecht='m') as fix_m, (SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung' AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL)) AND aktiv AND fixangestellt AND geschlecht='w') as fix_w, (SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung' AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL)) AND aktiv AND NOT fixangestellt AND geschlecht='m') as extern_m, (SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung' AND (datum_bis >= now() OR datum_bis IS NULL) AND (datum_von <= now() OR datum_von IS NULL)) AND aktiv AND NOT fixangestellt AND geschlecht='w') as extern_w "; if($result = $db->db_query($qry)) { if($row = $db->db_fetch_object($result)) { echo ''; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; $gesamt_fix_m_nz += $row->fix_m; $gesamt_fix_w_nz += $row->fix_w; $gesamt_extern_m_nz += $row->extern_m; $gesamt_extern_w_nz += $row->extern_w; } } echo ''; echo ''; echo ""; echo ""; echo ""; echo ""; echo ""; echo ''; echo ""; echo ""; echo ""; } echo '
Anzahl
Institute fix extern
M W M W
fachbereich_kurzbz."'>$row->bezeichnung$row->fix_m$row->fix_w$row->extern_m$row->extern_w
Nicht zugeordnet$row->fix_m$row->fix_w$row->extern_m$row->extern_w
SUMME".(($gesamt_fix_m)+($gesamt_fix_m_nz))."".(($gesamt_fix_w)+($gesamt_fix_w_nz))."".(($gesamt_extern_m)+($gesamt_extern_m_nz))."".(($gesamt_extern_w)+($gesamt_extern_w_nz))."
".(($gesamt_fix_m)+($gesamt_fix_m_nz)+($gesamt_fix_w)+($gesamt_fix_w_nz))."".(($gesamt_extern_m)+($gesamt_extern_m_nz)+($gesamt_extern_w)+($gesamt_extern_w_nz))."
'; } ?>