diff --git a/vilesci/bis/bis_datencheck.php b/vilesci/bis/bis_datencheck.php
index 29df2390a..6f4dc0d93 100644
--- a/vilesci/bis/bis_datencheck.php
+++ b/vilesci/bis/bis_datencheck.php
@@ -22,13 +22,25 @@ $v='';
$studiensemester=new studiensemester($conn);
$ssem=$studiensemester->getaktorNext();
+if(strstr($ssem,"WS"))
+{
+ $bisdatum=date("Y-m-d", mktime(0, 0, 0, 11, 15, date("Y")));
+}
+elseif(strstr($ssem,"SS"))
+{
+ $bisdatum=date("Y-m-d", mktime(0, 0, 0, 04, 15, date("Y")));
+}
+else
+{
+ echo "Ungültiges Semester!";
+}
if(isset($_GET['stg_kz']))
{
$stg_kz=$_GET['stg_kz'];
}
else
{
- $stg_kz=222;
+ $stg_kz=0;
}
if(isset($_GET['email']))
{
@@ -86,7 +98,7 @@ $qry="SELECT DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.pe
JOIN public.tbl_prestudentrolle ON(tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_adresse ON(tbl_person.person_id=tbl_adresse.person_id)
LEFT JOIN lehre.tbl_abschlusspruefung USING(student_uid)
- WHERE heimatadresse IS TRUE
+ WHERE heimatadresse IS TRUE AND bismelden IS TRUE
AND (studiensemester_kurzbz='".$ssem."') AND tbl_student.studiengang_kz='".$stg_kz."'
AND (rolle_kurzbz='Student' OR rolle_kurzbz='Incoming' OR rolle_kurzbz='Outgiong'
OR rolle_kurzbz='Praktikant' OR rolle_kurzbz='Diplomand' OR rolle_kurzbz='Absolvent')
@@ -367,7 +379,7 @@ if($result = pg_query($conn, $qry))
$error_log.="IO - bis ('".$rowio->bis."')";
}
}
- if($rowio->zweck_code='' || $$rowio->zweck_code=null)
+ if($rowio->zweck_code='' || $rowio->zweck_code=null)
{
if($error_log!='')
{
@@ -414,8 +426,43 @@ if($result = pg_query($conn, $qry))
$error_log1='';
}
}
+$qrybw="SELECT * FROM public.tbl_prestudent
+ JOIN public.tbl_prestudentrolle ON(tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id)
+ JOIN public.tbl_person USING(person_id)
+ WHERE bismelden IS TRUE AND (studiensemester_kurzbz='".$ssem."') AND tbl_prestudent.studiengang_kz='".$stg_kz."'
+ AND rolle_kurzbz='Bewerber';
+ ";
+if($resultbw = pg_query($conn, $qrybw))
+{
+ while($rowbw = pg_fetch_object($resultbw))
+ {
+ if($stgart=='b' || $stgart=='d')
+ {
+ if(!($rowbw->zgv_code>=4 && $rowbw->zgv_code<=19) && $rowbw->zgv_code!=99 || $rowbw->zgv_code=='' || $rowbw->zgv_code==NULL)
+ {
+ $v.="Bei Bewerber (Vorname, Nachname) '".$rowbw->nachname."', '".$rowbw->vorname."' ($rowbw->rolle_kurzbz) fehlt die Zugangsvoraussetzungsart (".$rowbw->zgv_code.")\n";
+ }
+ }
+ if($stgart=='m')
+ {
+ if(!($rowbw->zgv_code>=4 && $rowbw->zgv_code<=19) && $rowbw->zgv_code!=99)
+ {
+ $v.="Bei Bewerber (Vorname, Nachname) '".$rowbw->nachname."', '".$rowbw->vorname."' ($rowbw->rolle_kurzbz) fehlt die Zugangsvoraussetzungsart (".$rowbw->zgv_code.")\n";
+ }
+ if(!($rowbw->zgvmas_code>=1 && $rowbw->zgvmas_code<=11))
+ {
+ $v.="Bei Bewerber (Vorname, Nachname) '".$rowbw->nachname."', '".$rowbw->vorname."' ($rowbw->rolle_kurzbz) fehlt die Mag.-Zugangsvoraussetzungsart (".$rowbw->zgvmas_code.")\n";
+ }
+ }
+ }
+}
+else
+{
+ echo "Bewerber - Leider nein";
+}
+
echo "
BIS - Studentendaten werden überprüft. Studiengang: ".$stg_kz."
\n";
-echo "Fehlende BIS-Daten (für Meldung ".$ssem."):
";
+echo "Fehlende BIS-Daten (für Meldung ".$ssem."/".$bisdatum."):
";
//echo "(Doppelte Zeilen deuten auf mehrere Heimatadressen hin - bitte Kontakte überprüfen)
";
echo nl2br($v."\n");
diff --git a/vilesci/bis/bismeldung_studenten.php b/vilesci/bis/bismeldung_studenten.php
index 53c07a058..7d07a04ea 100644
--- a/vilesci/bis/bismeldung_studenten.php
+++ b/vilesci/bis/bismeldung_studenten.php
@@ -35,6 +35,8 @@ $gast='';
$avon='';
$abis='';
$zweck='';
+$bewerberM=array();
+$bewerberW=array();
$qry="SELECT * FROM public.tbl_studiensemester WHERE studiensemester_kurzbz='".$ssem."';";
if($result = pg_query($conn, $qry))
@@ -63,9 +65,9 @@ if(isset($_GET['stg_kz']))
}
else
{
- $stg_kz=254;
- //echo "Es wurde keine Studiengangskennzahl übergeben!
";
- //exit;
+ //$stg_kz=0;
+ echo "Es wurde kein Studiengang ausgewählt!
";
+ exit;
}
function myaddslashes($var)
{
@@ -132,7 +134,7 @@ $qry="SELECT DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.pe
JOIN public.tbl_prestudentrolle ON(tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id)
JOIN public.tbl_adresse ON(tbl_person.person_id=tbl_adresse.person_id)
LEFT JOIN lehre.tbl_abschlusspruefung USING(student_uid)
- WHERE heimatadresse IS TRUE
+ WHERE heimatadresse IS TRUE AND bismelden IS TRUE
AND (studiensemester_kurzbz='".$ssem."') AND tbl_student.studiengang_kz='".$stg_kz."'
AND (rolle_kurzbz='Student' OR rolle_kurzbz='Incoming' OR rolle_kurzbz='Outgiong'
OR rolle_kurzbz='Praktikant' OR rolle_kurzbz='Diplomand' OR rolle_kurzbz='Absolvent'
@@ -433,7 +435,7 @@ $datei.="
$datei.="
".$row->staatsbuergerschaft."
".$row->plz."
- ".$row->plz."
+ ".$row->gemeinde."
".$row->strasse."
".$row->nation."
".$row->zgv_code."
@@ -444,7 +446,7 @@ $datei.="
".$row->zgvmas_code."
".date("dmY", $datumobj->mktime_fromdate($row->zgvmadatum))."";
}
- $qryad="SELECT * FROM public.tbl_prestudentrolle WHERE prestudent_id='".$row->prestudent_id."' AND rolle_kurzbz='Student' ORDER BY datum desc;";
+ $qryad="SELECT * FROM public.tbl_prestudentrolle WHERE prestudent_id='".$row->prestudent_id."' AND rolle_kurzbz='Student' ORDER BY datum asc;";
if($resultad = pg_query($conn, $qryad))
{
if($rowad = pg_fetch_object($resultad))
@@ -497,14 +499,110 @@ $datei.="
}
}
- $datei.="
+}
+//Bewerber
+$qrybw="SELECT * FROM public.tbl_prestudent
+ JOIN public.tbl_prestudentrolle ON(tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id)
+ JOIN public.tbl_person USING(person_id)
+ WHERE bismelden IS TRUE AND (studiensemester_kurzbz='".$ssem."') AND tbl_prestudent.studiengang_kz='".$stg_kz."'
+ AND rolle_kurzbz='Bewerber';
+ ";
+if($resultbw = pg_query($conn, $qrybw))
+{
+ while($rowbw = pg_fetch_object($resultbw))
+ {
+ if($stgart==1 || $stgart==3)
+ {
+ if(strtoupper($rowbw->geschlecht)=='M')
+ {
+ If(!isset($bewerberM[$rowbw->zgv_code]))
+ {
+ $bewerberM[$rowbw->zgv_code]=0;
+ }
+ $bewerberM[$rowbw->zgv_code]++;
+ }
+ else
+ {
+ If(!isset($bewerberW[$rowbw->zgv_code]))
+ {
+ $bewerberW[$rowbw->zgv_code]=0;
+ }
+ $bewerberW[$rowbw->zgv_code]++;
+ }
+ }
+ if($stgart==2)
+ {
+ if(strtoupper($rowbw->geschlecht)=='M')
+ {
+ If(!isset($bewerberM[$rowbw->zgvmas_code]))
+ {
+ $bewerberM[$rowbw->zgvmas_code]=0;
+ }
+ $bewerberM[$rowbw->zgvmas_code]++;
+ }
+ else
+ {
+ If(!isset($bewerberW[$rowbw->zgvmas_code]))
+ {
+ $bewerberW[$rowbw->zgvmas_code]=0;
+ }
+ $bewerberW[$rowbw->zgvmas_code]++;
+ }
+ }
+ }
+}
+
+if($stgart==1 || $stgart==3)
+{
+ for($i=4;$i<100;$i++)
+ {
+ if(isset($bewerberM[$i]) || isset($bewerberW[$i]))
+ {
+ If(!isset($bewerberM[$i]))
+ {
+ $bewerberM[$i]=0;
+ }
+ If(!isset($bewerberW[$i]))
+ {
+ $bewerberW[$i]=0;
+ }
+ $datei.="
+
+ ".$i."
+ ".$bewerberM[$i]."
+ ".$bewerberW[$i]."
+ ";
+ }
+ }
+}
+if($stgart==2)
+{
+ for($i=1;$i<12;$i++)
+ {
+ if(isset($bewerberM[$i]) || isset($bewerberW[$i]))
+ {
+ if(!isset($bewerberM[$i]))
+ {
+ $bewerberM[$i]=0;
+ }
+ if(!isset($bewerberW[$i]))
+ {
+ $bewerberW[$i]=0;
+ }
+ $datei.="
+
+ ".$i."
+ ".$bewerberM[$i]."
+ ".$bewerberW[$i]."
+ ";
+ }
+ }
+}
+$datei.="
";
-
-}
-
if(strlen($v)!='')
{
echo 'BIS - Meldung Student - ('.$stg_kz.')
diff --git a/vilesci/bis/checkverwendung.php b/vilesci/bis/checkverwendung.php
index 5ef3c846a..697409a7b 100644
--- a/vilesci/bis/checkverwendung.php
+++ b/vilesci/bis/checkverwendung.php
@@ -12,6 +12,7 @@
//*
require('../config.inc.php');
+require('../../include/studiensemester.class.php');
$conn=pg_connect(CONN_STRING) or die("Connection zur Portal Datenbank fehlgeschlagen");
$conn_fas=pg_connect(CONN_STRING_FAS) or die("Connection zur FAS Datenbank fehlgeschlagen");
@@ -30,6 +31,8 @@ $anzahl_fehler=0;
$ausgabe='';
$error_log_fas='';
$update=false;
+$studiensemester=new studiensemester($conn);
+$ssem=$studiensemester->getaktorNext();
function myaddslashes($var)
{
@@ -57,7 +60,7 @@ if($result = pg_query($conn, $qry))
$ende[$row->studiensemester_kurzbz]=$row->ende;
}
}
-//1 - aktive mitarbeiter mit keiner verwendung oder mehr als einer aktuellen verwendung
+//1 - aktive mitarbeiter und bismelden mit keiner verwendung oder mehr als einer aktuellen verwendung
$qryall='SELECT uid,nachname,vorname, count(bisverwendung_id) FROM campus.vw_mitarbeiter LEFT OUTER JOIN bis.tbl_bisverwendung ON (uid=mitarbeiter_uid) WHERE aktiv AND (ende>now() OR ende IS NULL) GROUP BY uid,nachname,vorname HAVING count(bisverwendung_id)!=1 ORDER by nachname,vorname;';
if($resultall = pg_query($conn, $qryall))
{
@@ -67,7 +70,7 @@ if($resultall = pg_query($conn, $qryall))
{
$i=0;
$qry="SELECT * FROM bis.tbl_bisverwendung JOIN public.tbl_benutzer ON(mitarbeiter_uid=uid) JOIN public.tbl_person USING(person_id)
- WHERE tbl_benutzer.aktiv=TRUE AND (ende>now() OR ende IS NULL) AND mitarbeiter_uid='".$rowall->uid."';";
+ WHERE tbl_benutzer.aktiv=TRUE AND bismelden=TRUE AND (ende>now() OR ende IS NULL) AND mitarbeiter_uid='".$rowall->uid."';";
if($result = pg_query($conn, $qry))
{
$num_rows=pg_num_rows($result);
@@ -253,4 +256,14 @@ if($resultall = pg_query($conn, $qryall))
}
}
}
+//7 - Lehrauftrag aber keine aktuelle Verwendung
+$qry_erg="SELECT lehre.tbl_lehreinheitmitarbeiter.mitarbeiter_uid, lehre.tbl_lehrveranstaltung.studiengang_kz,
+ lehre.tbl_lehreinheit.studiensemester_kurzbz, lehre.tbl_lehreinheitmitarbeiter.semesterstunden,
+ lehre.tbl_lehrveranstaltung.semester, public.tbl_semesterwochen.wochen
+ FROM lehre.tbl_lehreinheitmitarbeiter join lehre.tbl_lehreinheit USING (lehreinheit_id)
+ JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
+ JOIN public.tbl_semesterwochen USING(studiengang_kz, semester)
+ WHERE lehre.tbl_lehreinheitmitarbeiter.mitarbeiter_uid='".$row->mitarbeiter_uid."'
+ AND lehre.tbl_lehreinheit.studiensemester_kurzbz='".$ssem."';";
+
?>
\ No newline at end of file