diff --git a/system/checkStudenten.php b/system/checkStudenten.php
index c59f36b71..12bad24b8 100644
--- a/system/checkStudenten.php
+++ b/system/checkStudenten.php
@@ -602,6 +602,41 @@ if ($result = $db->db_query($qry))
}
}
+/*
+ * Aktive Studierende ohne Matrikelnummer
+ */
+$text .= "
Studierender hat keine Matrikelnummer
";
+
+$qry = "
+SELECT
+ distinct on (person_id)
+ tbl_student.student_uid,
+ tbl_prestudent.prestudent_id,
+ tbl_prestudent.studiengang_kz as studiengang
+FROM
+ public.tbl_prestudent
+ JOIN public.tbl_prestudentstatus USING(prestudent_id)
+ JOIN public.tbl_person USING(person_id)
+ JOIN public.tbl_student USING(prestudent_id)
+ JOIN public.tbl_benutzer USING(person_id)
+WHERE
+ status_kurzbz in('Student', 'Diplomand', 'Absolvent', 'Abbrecher')
+ AND tbl_prestudent.bismelden
+ AND tbl_benutzer.aktiv
+ AND tbl_person.matr_nr is null OR tbl_person.matr_nr = ''
+ AND tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($aktSem);
+
+if ($studiengang_kz != '')
+ $qry .= " AND tbl_prestudent.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER);
+
+if ($result = $db->db_query($qry))
+{
+ while ($row = $db->db_fetch_object($result))
+ {
+ $ausgabe[$row->studiengang][14][] = $row->student_uid;
+ }
+}
+
// Ausgabe der Studenten
foreach ($ausgabe as $stg_kz => $value)
{
@@ -751,6 +786,16 @@ foreach ($ausgabe as $stg_kz => $value)
Studienplan ist in diesem Semester nicht gültig (nicht BIS relevant) |
";
break;
+ case 14:
+ echo "
+
+ | |
+
+
+ | Aktive Studierende ohne Matrikelnummer |
+
";
+ break;
+
default:
echo "| |
| Ungültiger Code |
";
break;
diff --git a/vilesci/bis/lehrgangsmeldung.php b/vilesci/bis/lehrgangsmeldung.php
index 915a227cd..76b0b7f30 100644
--- a/vilesci/bis/lehrgangsmeldung.php
+++ b/vilesci/bis/lehrgangsmeldung.php
@@ -1,587 +1,590 @@
-
- * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
- * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
- * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
- */
-require_once('../../config/vilesci.config.inc.php');
-require_once('../../include/studiensemester.class.php');
-require_once('../../include/datum.class.php');
-require_once('../../include/functions.inc.php');
-require_once('../../include/benutzerberechtigung.class.php');
-
-if (!$db = new basis_db())
- die('Es konnte keine Verbindung zum Server aufgebaut werden.');
-
-$uid = get_uid();
-
-$rechte = new benutzerberechtigung();
-$rechte->getBerechtigungen($uid);
-
-if(!$rechte->isBerechtigt('student/stammdaten', null, 'suid'))
- die('Sie haben keine Berechtigung für diese Seite');
-
-$error_log='';
-$error_log1='';
-$error_log_all="";
-$fehler='';
-$maxsemester=0;
-$v='';
-$studiensemester=new studiensemester();
-$ssem=$studiensemester->getaktorNext();
-$psem=$studiensemester->getPrevious();
-$datei='';
-$zaehl=0;
-$lehrgangsname = '';
-
-$stsem_obj = new studiensemester();
-$stsem_obj->load($ssem);
-//Beginn- und Endedatum des aktuellen Semesters
-$beginn=$stsem_obj->start;
-$ende=$stsem_obj->ende;
-
-//Ermittlung aktuelles und letztes BIS-Meldedatum
-if(mb_strstr($ssem,"WS"))
-{
- $bisdatum=date("Y-m-d", mktime(0, 0, 0, 11, 15, date("Y")));
- $bisprevious=date("Y-m-d", mktime(0, 0, 0, 04, 15, date("Y")));
-}
-elseif(mb_strstr($ssem,"SS"))
-{
- $bisdatum=date("Y-m-d", mktime(0, 0, 0, 04, 15, date("Y")));
- $bisprevious=date("Y-m-d", mktime(0, 0, 0, 11, 15, date("Y")-1));
-}
-else
-{
- echo "Ungültiges Semester!";
-}
-//ausgewählter Lehrgang
-if(isset($_GET['stg_kz']))
-{
- if($_GET['stg_kz']<0)
- {
- $stg_kz=$_GET['stg_kz'];
- }
- else
- {
- echo "Es wurde kein Lehrgang ausgewählt!
";
- }
-}
-else
-{
- echo "Es wurde kein Lehrgang ausgewählt!
";
- exit;
-}
-//plausicheck
-if(isset($_GET['plausi']))
-{
- $plausi=$_GET['plausi'];
-}
-$datumobj=new datum();
-
-//Lehrgangsdaten auslesen
-$qry="SELECT * FROM public.tbl_studiengang WHERE studiengang_kz=".$db->db_add_param($stg_kz);
-if($result = $db->db_query($qry))
-{
- if($row = $db->db_fetch_object($result))
- {
- $stgart=$row->typ;
- $lgartcode = $row->lgartcode;
- $qrylgart = "SELECT lgart_biscode FROM bis.tbl_lgartcode WHERE lgartcode=".$db->db_add_param($row->lgartcode);
- if($result_lgartcode = $db->db_query($qrylgart))
- {
- if($row_lgartcode = $db->db_fetch_object($result_lgartcode))
- {
- $lgartcode=$row_lgartcode->lgart_biscode;
- }
- }
-
- $stgemail=$row->email;
- if(strlen(trim($row->erhalter_kz))==1)
- {
- $erhalter='00'.trim($row->erhalter_kz);
- }
- elseif(strlen(trim($row->erhalter_kz))==2)
- {
- $erhalter='0'.trim($row->erhalter_kz);
- }
- else
- {
- $erhalter=$row->erhalter_kz;
- }
- $lehrgangsname = $row->bezeichnung;
- }
-}
-$lehrgangsnummer = $erhalter.sprintf('%04s', abs($stg_kz));
-$tabelle = '
-
- | UID |
- Nachname |
- Vorname |
- PersKz |
-
';
-$anzahl_gemeldet=0;
-//Hauptselect
-$qry="SELECT DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat
- FROM public.tbl_student
- JOIN public.tbl_benutzer ON(student_uid=uid)
- JOIN public.tbl_person USING (person_id)
- JOIN public.tbl_prestudent USING (prestudent_id)
- JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
- WHERE bismelden IS TRUE
- AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
- AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
- AND (status_kurzbz='Student' OR status_kurzbz='Outgoing'
- OR status_kurzbz='Praktikant' OR status_kurzbz='Diplomand' OR status_kurzbz='Absolvent'
- OR status_kurzbz='Abbrecher' OR status_kurzbz='Unterbrecher'))
- OR ((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($psem).") AND (status_kurzbz='Absolvent'
- OR status_kurzbz='Abbrecher') AND tbl_prestudentstatus.datum>".$db->db_add_param($bisprevious).")
- OR (status_kurzbz='Incoming' AND student_uid IN (SELECT student_uid FROM bis.tbl_bisio WHERE (tbl_bisio.bis>=".$db->db_add_param($bisprevious).")
- OR (tbl_bisio.von<".$db->db_add_param($bisdatum)." AND (tbl_bisio.bis>=".$db->db_add_param($bisdatum)." OR tbl_bisio.bis IS NULL))
- )))
- ORDER BY student_uid, nachname, vorname
- ";
-
-if($result = $db->db_query($qry))
-{
-
- $datei.="
-
- ".$erhalter."
- ".date("dmY", $datumobj->mktime_fromdate($bisdatum))."
-
-
- ".$lehrgangsnummer."";
-
- while($row = $db->db_fetch_object($result))
- {
- //Plausichecks
- $qryadr="SELECT * FROM public.tbl_adresse WHERE heimatadresse IS TRUE AND person_id=".$db->db_add_param($row->pers_id).";";
- $results=$db->db_query($qryadr);
-
- if($anz=$db->db_num_rows($results)!=1)
- {
- $error_log1="Es sind ".$anz." Heimatadressen eingetragen\n";
- }
- if($rowadr=$db->db_fetch_object($results))
- {
- $plz=$rowadr->plz;
- $gemeinde=$rowadr->gemeinde;
- $strasse=$rowadr->strasse;
- $nation=$rowadr->nation;
- }
- else
- {
- $plz='';
- $gemeinde='';
- $strasse='';
- $nation='';
- }
- if($row->gebdatum<'1920-01-01' OR $row->gebdatum==null OR $row->gebdatum=='')
- {
- $error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
- }
- if($row->geschlecht!='m' && $row->geschlecht!='w')
- {
- $error_log.=(!empty($error_log)?', ':'')."Geschlecht ('".$row->geschlecht."')";
- }
- if($row->vorname=='' || $row->vorname==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Vorname ('".$row->vorname."')";
- }
- if($row->nachname=='' || $row->nachname==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Nachname ('".$row->nachname."')";
- }
- //SVNR mu߸ 10-stellig sein
- if($row->svnr!='' && $row->svnr!=null && mb_strlen(trim($row->svnr))!=10)
- {
- $error_log.=(!empty($error_log)?', ':'')."SVNR ('".trim($row->svnr)."') ist nicht 10 Zeichen lang";
- }
- //Ersatzkennzeichen muß 10-stellig sein
- if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && mb_strlen(trim($row->ersatzkennzeichen))!=10)
- {
- $error_log.=(!empty($error_log)?', ':'')."Ersatzkennzeichen ('".trim($row->ersatzkennzeichen)."') ist nicht 10 Zeichen lang";
- }
- //Vergleich der letzten 6 Stellen der SVNR mit Geburtsdatum - ausser bei 01.01. und 01.07.
- if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107')
- {
- $error_log.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
- }
- //Vergleich der letzten 6 Stellen des Ersatzkennzeichen mit Geburtsdatum
- if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat)
- {
- $error_log.=(!empty($error_log)?', ':'')."Ersatzkennzeichen ('".$row->ersatzkennzeichen."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
- }
- if(($row->svnr=='' || $row->svnr==null)&&($row->ersatzkennzeichen=='' || $row->ersatzkennzeichen==null))
- {
- $error_log.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') bzw. ErsKz ('".$row->ersatzkennzeichen."') fehlt";
- }
- if($row->staatsbuergerschaft=='' || $row->staatsbuergerschaft==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Staatsbürgerschaft ('".$row->staatsbuergerschaft."')";
- }
- if($plz=='' || $plz==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Heimat-PLZ ('".$plz."')";
- }
- if($gemeinde=='' || $gemeinde==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Heimat-Gemeinde ('".$gemeinde."')";
- }
- if($strasse=='' || $strasse==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Heimat-Strasse ('".$strasse."')";
- }
- if($nation=='' || $nation==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Heimat-Nation ('".$nation."')";
- }
- if($row->zgv_code=='' || $row->zgv_code==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangCode ('".$row->zgv_code."')";
- }
- if($row->zgvdatum=='' || $row->zgvdatum==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangDatum ('".$row->zgvdatum."')";
- }
- else
- {
- if($row->zgvdatum>date('Y-m-d'))
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangDatum liegt in der Zukunft ('".$row->zgvdatum."')";
- }
- if($row->zgvdatum<$row->gebdatum)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangDatum ('".$row->zgvdatum."') kleiner als Geburtsdatum ('".$row->gebdatum."')";
- }
- }
- if($lgartcode==1)
- {
- if($row->zgvmas_code=='' || $row->zgvmas_code==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgCode ('".$row->zgvmas_code."')";
- }
- if($row->zgvmadatum=='' || $row->zgvmadatum==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."')";
- }
- else
- {
- if($row->zgvmadatum>date("Y-m-d"))
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum liegt in der Zukunft ('".$row->zgvmadatum."')";
- }
- if($row->zgvmadatum<$row->zgvdatum)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."') kleiner als Zugangdatum ('".$row->zgvdatum."')";
- }
- if($row->zgvmadatum<$row->gebdatum)
- {
- $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."') kleiner als Geburtsdatum ('".$row->gebdatum."')";
- }
- }
- }
- //Bestimmen der aktuellen Prestudentrolle (Status) und des akt. Ausbildungssemesters des Studenten
- $qrystatus="SELECT * FROM public.tbl_prestudentstatus
- WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($ssem)."
- AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).")
- ORDER BY datum desc, insertamum desc, ext_id desc;";
- if($resultstatus = $db->db_query($qrystatus))
- {
- if($db->db_num_rows($resultstatus)>0)
- {
- if($rowstatus = $db->db_fetch_object($resultstatus))
- {
- $qry1="SELECT count(*) AS dipl FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND status_kurzbz='Diplomand'";
- if($result1 = $db->db_query($qry1))
- {
- if($row1 = $db->db_fetch_object($result1))
- {
- $sem=$rowstatus->ausbildungssemester;
- if($sem>$maxsemester)
- {
- $sem=$maxsemester;
- }
- if($row1->dipl>1)
- {
- $sem=50;
- }
- if($row1->dipl>3)
- {
- $sem=60;
- }
- }
- }
- if($rowstatus->status_kurzbz=="Student" || $rowstatus->status_kurzbz=='Praktikant'
- || $rowstatus->status_kurzbz=="Diplomand")
- {
- $status=1;
- }
- else if($rowstatus->status_kurzbz=="Unterbrecher" )
- {
- $status=2;
- }
- else if($rowstatus->status_kurzbz=="Absolvent" )
- {
- $status=3;
- }
- else if($rowstatus->status_kurzbz=="Abbrecher" )
- {
- $status=4;
- }
- else
- {
- $error_log='';
- $error_log1='';
- continue;
- }
- $aktstatus=$rowstatus->status_kurzbz;
- $aktstatus_datum=$rowstatus->datum;
- $storgform=$rowstatus->orgform_kurzbz;
- }
- }
- else
- {
- $qrystatus="SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($psem)." AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).") ORDER BY datum desc, insertamum desc, ext_id desc;";
- if($resultstatus = $db->db_query($qrystatus))
- {
- if($rowstatus = $db->db_fetch_object($resultstatus))
- {
- $qry1="SELECT count(*) AS dipl FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND status_kurzbz='Diplomand'";
- if($result1 = $db->db_query($qry1))
- {
- if($row1 = $db->db_fetch_object($result1))
- {
- $sem=$rowstatus->ausbildungssemester;
- if($sem>$maxsemester)
- {
- $sem=$maxsemester;
- }
- if($row1->dipl>1)
- {
- $sem=50;
- }
- if($row1->dipl>3)
- {
- $sem=60;
- }
- }
- }
- if($rowstatus->status_kurzbz=="Absolvent" )
- {
- $status=3;
- }
- else if($rowstatus->status_kurzbz=="Abbrecher" )
- {
- $status=4;
- }
- else
- {
- $error_log='';
- $error_log1='';
- continue;
- }
- $aktstatus=$rowstatus->status_kurzbz;
- $aktstatus_datum=$rowstatus->datum;
- //$storgform=$rowstatus->orgform_kurzbz;
- }
- }
- }
- }
- //bei Absolventen das Beendigungsdatum (Sponsion oder Abschlussprüfung) überprüfen
-
- if($aktstatus=='Absolvent')
- {
- $qry_ap="SELECT * FROM lehre.tbl_abschlusspruefung WHERE student_uid=".$db->db_add_param($row->student_uid)." AND abschlussbeurteilung_kurzbz!='nicht' AND abschlussbeurteilung_kurzbz IS NOT NULL";
- if($result_ap = $db->db_query($qry_ap))
- {
- $ap=0;
- while($row_ap = $db->db_fetch_object($result_ap))
- {
- if($row_ap->datum=='' || $row_ap->datum==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Datum der Abschlussprüfung ('".$row_ap->datum."')";
- }
- if($row_ap->sponsion=='' || $row_ap->sponsion==null)
- {
- $error_log.=(!empty($error_log)?', ':'')."Datum der Sponsion ('".$row_ap->sponsion."')";
- }
- $ap++;
- $sponsion=$row_ap->sponsion;
- }
- if($ap!=1)
- {
- $error_log.=(!empty($error_log)?', ':'').$ap." bestandene Abschlussprüfungen";
- }
- }
- }
-
- if($row->zgvmanation!='' && $lgartcode==1) // Master Lehrgang
- $ausstellungsstaat = $row->zgvmanation;
- elseif($row->zgvnation!='')
- $ausstellungsstaat = $row->zgvnation;
- else
- $ausstellungsstaat = $row->ausstellungsstaat;
- if($ausstellungsstaat == '')
- {
- $error_log.=(!empty($error_log)?', ':'')." Ausstellungsstaat fehlt";
- }
-
- if($error_log!='' OR $error_log1!='')
- {
- //Ausgabe der fehlenden Daten
- $v.="Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($row->status_kurzbz): \n";
- if($error_log!='')
- {
- $v.=" Fehler: ".$error_log."\n";
- }
- if($error_log1!='')
- {
- $v.=" ".$error_log1;
- }
- $zaehl++;
- $v.="\n";
- $error_log='';
- $error_log1='';
- continue;
- }
- else
- {
- $anzahl_gemeldet++;
- $tabelle.='| '.$row->student_uid.' | '.$row->nachname.' | '.$row->vorname.' | '.$row->matrikelnr.' |
';
-
- //Erstellung der XML-Datei
- $datei.="
-
- ".trim($row->matrikelnr)."
- ".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."
- ".strtoupper($row->geschlecht)."";
- if(($row->svnr!='')&&($row->ersatzkennzeichen!=''))
- {
- $datei.="
- ".$row->svnr."";
- $datei.="
- ".$row->ersatzkennzeichen."";
- }
- else
- {
- if($row->svnr!='')
- {
- $datei.="
- ".$row->svnr."";
- }
- if($row->ersatzkennzeichen!='')
- {
- $datei.="
- ".$row->ersatzkennzeichen."";
- }
- }
-
- $datei.="
- ".$row->staatsbuergerschaft."
- ".$plz."
- ".$gemeinde."
- ".$nation."
- ".$row->zgv_code."
- ".date("dmY", $datumobj->mktime_fromdate($row->zgvdatum))."";
-
- if($lgartcode==1)
- {
- $datei.="
- ".$row->zgvmas_code."
- ".date("dmY", $datumobj->mktime_fromdate($row->zgvmadatum))."";
- }
-
- $datei.="
- ".$ausstellungsstaat."";
-
- $qryad="SELECT
- *
- FROM
- public.tbl_prestudentstatus
- WHERE
- prestudent_id=".$db->db_add_param($row->prestudent_id, FHC_INTEGER)."
- AND (status_kurzbz='Student' OR status_kurzbz='Unterbrecher')
- AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).") ORDER BY datum asc;";
-
- if($resultad = $db->db_query($qryad))
- {
- if($rowad = $db->db_fetch_object($resultad))
- {
- $datei.="
- ".date("dmY", $datumobj->mktime_fromdate($rowad->datum))."";
- }
- }
-
- if($aktstatus=='Absolvent')
- {
- $datei.="
- ".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum))."";
- }
- if($aktstatus=='Abbrecher')
- {
- $datei.="
- ".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum))."";
- }
- $datei.="
- ".$status."
- ";
- }
- }
- $tabelle.='
';
-
- $datei.="
-
-
-";
-
- echo '
-
-
- BIS - Lehrgangsmeldung - '.$lehrgangsname.' ('.$lehrgangsnummer.')
-
-
-
- ';
-
- echo "BIS - Studentendaten werden überprüft! Lehrgang: ".$lehrgangsname.' ('.$lehrgangsnummer.")
\n";
-
- if(strlen(trim($v))>0)
- {
- echo "Nicht plausible BIS-Daten (für Meldung ".$ssem."):
";
- echo nl2br($v."\n\n");
- }
-
- $ddd='bisdaten/bismeldung_'.$ssem.'_Lehrgang'.$lehrgangsnummer.'.xml';
- $dateiausgabe=fopen($ddd,'w');
- fwrite($dateiausgabe,$datei);
- fclose($dateiausgabe);
-
- if(file_exists($ddd))
- {
- echo "XML-Datei für BIS-Meldung Lehrgang ".$lehrgangsname.' ('.$lehrgangsnummer.")
";
- }
-
- echo '
';
- echo '
Folgende Personen sind in der Meldung enthalten:
';
- echo 'Anzahl:'.$anzahl_gemeldet;
- echo $tabelle;
-}
-?>
+
+ * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
+ * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
+ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
+ */
+require_once('../../config/vilesci.config.inc.php');
+require_once('../../include/studiensemester.class.php');
+require_once('../../include/datum.class.php');
+require_once('../../include/functions.inc.php');
+require_once('../../include/benutzerberechtigung.class.php');
+
+if (!$db = new basis_db())
+ die('Es konnte keine Verbindung zum Server aufgebaut werden.');
+
+$uid = get_uid();
+
+$rechte = new benutzerberechtigung();
+$rechte->getBerechtigungen($uid);
+
+if(!$rechte->isBerechtigt('student/stammdaten', null, 'suid'))
+ die('Sie haben keine Berechtigung für diese Seite');
+
+$error_log='';
+$error_log1='';
+$error_log_all="";
+$fehler='';
+$maxsemester=0;
+$v='';
+$studiensemester=new studiensemester();
+$ssem=$studiensemester->getaktorNext();
+$psem=$studiensemester->getPrevious();
+$datei='';
+$zaehl=0;
+$lehrgangsname = '';
+
+$stsem_obj = new studiensemester();
+$stsem_obj->load($ssem);
+//Beginn- und Endedatum des aktuellen Semesters
+$beginn=$stsem_obj->start;
+$ende=$stsem_obj->ende;
+
+//Ermittlung aktuelles und letztes BIS-Meldedatum
+if(mb_strstr($ssem,"WS"))
+{
+ $bisdatum=date("Y-m-d", mktime(0, 0, 0, 11, 15, date("Y")));
+ $bisprevious=date("Y-m-d", mktime(0, 0, 0, 04, 15, date("Y")));
+}
+elseif(mb_strstr($ssem,"SS"))
+{
+ $bisdatum=date("Y-m-d", mktime(0, 0, 0, 04, 15, date("Y")));
+ $bisprevious=date("Y-m-d", mktime(0, 0, 0, 11, 15, date("Y")-1));
+}
+else
+{
+ echo "Ungültiges Semester!";
+}
+//ausgewählter Lehrgang
+if(isset($_GET['stg_kz']))
+{
+ if($_GET['stg_kz']<0)
+ {
+ $stg_kz=$_GET['stg_kz'];
+ }
+ else
+ {
+ echo "Es wurde kein Lehrgang ausgewählt!
";
+ }
+}
+else
+{
+ echo "Es wurde kein Lehrgang ausgewählt!
";
+ exit;
+}
+//plausicheck
+if(isset($_GET['plausi']))
+{
+ $plausi=$_GET['plausi'];
+}
+$datumobj=new datum();
+
+//Lehrgangsdaten auslesen
+$qry="SELECT * FROM public.tbl_studiengang WHERE studiengang_kz=".$db->db_add_param($stg_kz);
+if($result = $db->db_query($qry))
+{
+ if($row = $db->db_fetch_object($result))
+ {
+ $stgart=$row->typ;
+ $lgartcode = $row->lgartcode;
+ $qrylgart = "SELECT lgart_biscode FROM bis.tbl_lgartcode WHERE lgartcode=".$db->db_add_param($row->lgartcode);
+ if($result_lgartcode = $db->db_query($qrylgart))
+ {
+ if($row_lgartcode = $db->db_fetch_object($result_lgartcode))
+ {
+ $lgartcode=$row_lgartcode->lgart_biscode;
+ }
+ }
+
+ $stgemail=$row->email;
+ if(strlen(trim($row->erhalter_kz))==1)
+ {
+ $erhalter='00'.trim($row->erhalter_kz);
+ }
+ elseif(strlen(trim($row->erhalter_kz))==2)
+ {
+ $erhalter='0'.trim($row->erhalter_kz);
+ }
+ else
+ {
+ $erhalter=$row->erhalter_kz;
+ }
+ $lehrgangsname = $row->bezeichnung;
+ }
+}
+$lehrgangsnummer = $erhalter.sprintf('%04s', abs($stg_kz));
+$tabelle = '
+
+ | UID |
+ Nachname |
+ Vorname |
+ PersKz |
+
';
+$anzahl_gemeldet=0;
+//Hauptselect
+$qry="SELECT DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat
+ FROM public.tbl_student
+ JOIN public.tbl_benutzer ON(student_uid=uid)
+ JOIN public.tbl_person USING (person_id)
+ JOIN public.tbl_prestudent USING (prestudent_id)
+ JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
+ WHERE bismelden IS TRUE
+ AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)."
+ AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
+ AND (status_kurzbz='Student' OR status_kurzbz='Outgoing'
+ OR status_kurzbz='Praktikant' OR status_kurzbz='Diplomand' OR status_kurzbz='Absolvent'
+ OR status_kurzbz='Abbrecher' OR status_kurzbz='Unterbrecher'))
+ OR ((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($psem).") AND (status_kurzbz='Absolvent'
+ OR status_kurzbz='Abbrecher') AND tbl_prestudentstatus.datum>".$db->db_add_param($bisprevious).")
+ OR (status_kurzbz='Incoming' AND student_uid IN (SELECT student_uid FROM bis.tbl_bisio WHERE (tbl_bisio.bis>=".$db->db_add_param($bisprevious).")
+ OR (tbl_bisio.von<".$db->db_add_param($bisdatum)." AND (tbl_bisio.bis>=".$db->db_add_param($bisdatum)." OR tbl_bisio.bis IS NULL))
+ )))
+ ORDER BY student_uid, nachname, vorname
+ ";
+
+if($result = $db->db_query($qry))
+{
+
+ $datei.="
+
+ ".$erhalter."
+ ".date("dmY", $datumobj->mktime_fromdate($bisdatum))."
+
+
+ ".$lehrgangsnummer."";
+
+ while($row = $db->db_fetch_object($result))
+ {
+ //Plausichecks
+ $qryadr="SELECT * FROM public.tbl_adresse WHERE heimatadresse IS TRUE AND person_id=".$db->db_add_param($row->pers_id).";";
+ $results=$db->db_query($qryadr);
+
+ if($anz=$db->db_num_rows($results)!=1)
+ {
+ $error_log1="Es sind ".$anz." Heimatadressen eingetragen\n";
+ }
+ if($rowadr=$db->db_fetch_object($results))
+ {
+ $plz=$rowadr->plz;
+ $gemeinde=$rowadr->gemeinde;
+ $strasse=$rowadr->strasse;
+ $nation=$rowadr->nation;
+ }
+ else
+ {
+ $plz='';
+ $gemeinde='';
+ $strasse='';
+ $nation='';
+ }
+ if($row->gebdatum<'1920-01-01' OR $row->gebdatum==null OR $row->gebdatum=='')
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
+ }
+ if($row->geschlecht!='m' && $row->geschlecht!='w')
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Geschlecht ('".$row->geschlecht."')";
+ }
+ if($row->vorname=='' || $row->vorname==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Vorname ('".$row->vorname."')";
+ }
+ if($row->nachname=='' || $row->nachname==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Nachname ('".$row->nachname."')";
+ }
+ if($row->matr_nr=='')
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Matrikelnummer fehlt";
+ }
+ if($row->matr_nr!='' && $row->matr_nr!=null && mb_strlen(trim($row->matr_nr))!=8)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Matrikelnummer ('".trim($row->matr_nr)."') ist nicht 8 Zeichen lang";
+ }
+ //SVNR mu߸ 10-stellig sein
+ if($row->svnr!='' && $row->svnr!=null && mb_strlen(trim($row->svnr))!=10)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."SVNR ('".trim($row->svnr)."') ist nicht 10 Zeichen lang";
+ }
+ //Ersatzkennzeichen muß 10-stellig sein
+ if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && mb_strlen(trim($row->ersatzkennzeichen))!=10)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Ersatzkennzeichen ('".trim($row->ersatzkennzeichen)."') ist nicht 10 Zeichen lang";
+ }
+ //Vergleich der letzten 6 Stellen der SVNR mit Geburtsdatum - ausser bei 01.01. und 01.07.
+ if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107')
+ {
+ $error_log.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
+ }
+ //Vergleich der letzten 6 Stellen des Ersatzkennzeichen mit Geburtsdatum
+ if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Ersatzkennzeichen ('".$row->ersatzkennzeichen."') enthält Geburtsdatum (".$row->gebdatum.") nicht";
+ }
+ if(($row->svnr=='' || $row->svnr==null)&&($row->ersatzkennzeichen=='' || $row->ersatzkennzeichen==null))
+ {
+ $error_log.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') bzw. ErsKz ('".$row->ersatzkennzeichen."') fehlt";
+ }
+ if($row->staatsbuergerschaft=='' || $row->staatsbuergerschaft==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Staatsbürgerschaft ('".$row->staatsbuergerschaft."')";
+ }
+ if($plz=='' || $plz==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Heimat-PLZ ('".$plz."')";
+ }
+ if($gemeinde=='' || $gemeinde==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Heimat-Gemeinde ('".$gemeinde."')";
+ }
+ if($strasse=='' || $strasse==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Heimat-Strasse ('".$strasse."')";
+ }
+ if($nation=='' || $nation==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Heimat-Nation ('".$nation."')";
+ }
+ if($row->zgv_code=='' || $row->zgv_code==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangCode ('".$row->zgv_code."')";
+ }
+ if($row->zgvdatum=='' || $row->zgvdatum==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangDatum ('".$row->zgvdatum."')";
+ }
+ else
+ {
+ if($row->zgvdatum>date('Y-m-d'))
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangDatum liegt in der Zukunft ('".$row->zgvdatum."')";
+ }
+ if($row->zgvdatum<$row->gebdatum)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangDatum ('".$row->zgvdatum."') kleiner als Geburtsdatum ('".$row->gebdatum."')";
+ }
+ }
+ if($lgartcode==1)
+ {
+ if($row->zgvmas_code=='' || $row->zgvmas_code==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgCode ('".$row->zgvmas_code."')";
+ }
+ if($row->zgvmadatum=='' || $row->zgvmadatum==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."')";
+ }
+ else
+ {
+ if($row->zgvmadatum>date("Y-m-d"))
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum liegt in der Zukunft ('".$row->zgvmadatum."')";
+ }
+ if($row->zgvmadatum<$row->zgvdatum)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."') kleiner als Zugangdatum ('".$row->zgvdatum."')";
+ }
+ if($row->zgvmadatum<$row->gebdatum)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."ZugangMagStgDatum ('".$row->zgvmadatum."') kleiner als Geburtsdatum ('".$row->gebdatum."')";
+ }
+ }
+ }
+ //Bestimmen der aktuellen Prestudentrolle (Status) und des akt. Ausbildungssemesters des Studenten
+ $qrystatus="SELECT * FROM public.tbl_prestudentstatus
+ WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($ssem)."
+ AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).")
+ ORDER BY datum desc, insertamum desc, ext_id desc;";
+ if($resultstatus = $db->db_query($qrystatus))
+ {
+ if($db->db_num_rows($resultstatus)>0)
+ {
+ if($rowstatus = $db->db_fetch_object($resultstatus))
+ {
+ $qry1="SELECT count(*) AS dipl FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND status_kurzbz='Diplomand'";
+ if($result1 = $db->db_query($qry1))
+ {
+ if($row1 = $db->db_fetch_object($result1))
+ {
+ $sem=$rowstatus->ausbildungssemester;
+ if($sem>$maxsemester)
+ {
+ $sem=$maxsemester;
+ }
+ if($row1->dipl>1)
+ {
+ $sem=50;
+ }
+ if($row1->dipl>3)
+ {
+ $sem=60;
+ }
+ }
+ }
+ if($rowstatus->status_kurzbz=="Student" || $rowstatus->status_kurzbz=='Praktikant'
+ || $rowstatus->status_kurzbz=="Diplomand")
+ {
+ $status=1;
+ }
+ else if($rowstatus->status_kurzbz=="Unterbrecher" )
+ {
+ $status=2;
+ }
+ else if($rowstatus->status_kurzbz=="Absolvent" )
+ {
+ $status=3;
+ }
+ else if($rowstatus->status_kurzbz=="Abbrecher" )
+ {
+ $status=4;
+ }
+ else
+ {
+ $error_log='';
+ $error_log1='';
+ continue;
+ }
+ $aktstatus=$rowstatus->status_kurzbz;
+ $aktstatus_datum=$rowstatus->datum;
+ $storgform=$rowstatus->orgform_kurzbz;
+ }
+ }
+ else
+ {
+ $qrystatus="SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND studiensemester_kurzbz=".$db->db_add_param($psem)." AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).") ORDER BY datum desc, insertamum desc, ext_id desc;";
+ if($resultstatus = $db->db_query($qrystatus))
+ {
+ if($rowstatus = $db->db_fetch_object($resultstatus))
+ {
+ $qry1="SELECT count(*) AS dipl FROM public.tbl_prestudentstatus WHERE prestudent_id=".$db->db_add_param($row->prestudent_id)." AND status_kurzbz='Diplomand'";
+ if($result1 = $db->db_query($qry1))
+ {
+ if($row1 = $db->db_fetch_object($result1))
+ {
+ $sem=$rowstatus->ausbildungssemester;
+ if($sem>$maxsemester)
+ {
+ $sem=$maxsemester;
+ }
+ if($row1->dipl>1)
+ {
+ $sem=50;
+ }
+ if($row1->dipl>3)
+ {
+ $sem=60;
+ }
+ }
+ }
+ if($rowstatus->status_kurzbz=="Absolvent" )
+ {
+ $status=3;
+ }
+ else if($rowstatus->status_kurzbz=="Abbrecher" )
+ {
+ $status=4;
+ }
+ else
+ {
+ $error_log='';
+ $error_log1='';
+ continue;
+ }
+ $aktstatus=$rowstatus->status_kurzbz;
+ $aktstatus_datum=$rowstatus->datum;
+ //$storgform=$rowstatus->orgform_kurzbz;
+ }
+ }
+ }
+ }
+ //bei Absolventen das Beendigungsdatum (Sponsion oder Abschlussprüfung) überprüfen
+
+ if($aktstatus=='Absolvent')
+ {
+ $qry_ap="SELECT * FROM lehre.tbl_abschlusspruefung WHERE student_uid=".$db->db_add_param($row->student_uid)." AND abschlussbeurteilung_kurzbz!='nicht' AND abschlussbeurteilung_kurzbz IS NOT NULL";
+ if($result_ap = $db->db_query($qry_ap))
+ {
+ $ap=0;
+ while($row_ap = $db->db_fetch_object($result_ap))
+ {
+ if($row_ap->datum=='' || $row_ap->datum==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Datum der Abschlussprüfung ('".$row_ap->datum."')";
+ }
+ if($row_ap->sponsion=='' || $row_ap->sponsion==null)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Datum der Sponsion ('".$row_ap->sponsion."')";
+ }
+ $ap++;
+ $sponsion=$row_ap->sponsion;
+ }
+ if($ap!=1)
+ {
+ $error_log.=(!empty($error_log)?', ':'').$ap." bestandene Abschlussprüfungen";
+ }
+ }
+ }
+
+ if($row->zgvmanation!='' && $lgartcode==1) // Master Lehrgang
+ $ausstellungsstaat = $row->zgvmanation;
+ elseif($row->zgvnation!='')
+ $ausstellungsstaat = $row->zgvnation;
+ else
+ $ausstellungsstaat = $row->ausstellungsstaat;
+ if($ausstellungsstaat == '')
+ {
+ $error_log.=(!empty($error_log)?', ':'')." Ausstellungsstaat fehlt";
+ }
+
+ if($error_log!='' OR $error_log1!='')
+ {
+ //Ausgabe der fehlenden Daten
+ $v.="Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($row->status_kurzbz): \n";
+ if($error_log!='')
+ {
+ $v.=" Fehler: ".$error_log."\n";
+ }
+ if($error_log1!='')
+ {
+ $v.=" ".$error_log1;
+ }
+ $zaehl++;
+ $v.="\n";
+ $error_log='';
+ $error_log1='';
+ continue;
+ }
+ else
+ {
+ $anzahl_gemeldet++;
+ $tabelle.='| '.$row->student_uid.' | '.$row->nachname.' | '.$row->vorname.' | '.$row->matrikelnr.' |
';
+
+ //Erstellung der XML-Datei
+ $datei.="
+
+ ".trim($row->matrikelnr)."
+ ".$row->matr_nr."
+ ".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."
+ ".strtoupper($row->geschlecht)."
+ ".$row->vorname."
+ ".$row->nachname."";
+
+ if($row->svnr!='')
+ {
+ $datei.="
+ ".$row->svnr."";
+ }
+ if($row->ersatzkennzeichen!='')
+ {
+ $datei.="
+ ".$row->ersatzkennzeichen."";
+ }
+
+ $datei.="
+ ".$row->staatsbuergerschaft."
+ ".$plz."
+ ".$gemeinde."
+
+ ".$nation."
+ ".$row->zgv_code."
+ ".date("dmY", $datumobj->mktime_fromdate($row->zgvdatum))."";
+
+ if($lgartcode==1)
+ {
+ $datei.="
+ ".$row->zgvmas_code."
+ ".date("dmY", $datumobj->mktime_fromdate($row->zgvmadatum))."";
+ }
+
+ $datei.="
+ ".$ausstellungsstaat."";
+
+ $qryad="SELECT
+ *
+ FROM
+ public.tbl_prestudentstatus
+ WHERE
+ prestudent_id=".$db->db_add_param($row->prestudent_id, FHC_INTEGER)."
+ AND (status_kurzbz='Student' OR status_kurzbz='Unterbrecher')
+ AND (tbl_prestudentstatus.datum<".$db->db_add_param($bisdatum).") ORDER BY datum asc;";
+
+ if($resultad = $db->db_query($qryad))
+ {
+ if($rowad = $db->db_fetch_object($resultad))
+ {
+ $datei.="
+ ".date("dmY", $datumobj->mktime_fromdate($rowad->datum))."";
+ }
+ }
+
+ if($aktstatus=='Absolvent')
+ {
+ $datei.="
+ ".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum))."";
+ }
+ if($aktstatus=='Abbrecher')
+ {
+ $datei.="
+ ".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum))."";
+ }
+ $datei.="
+ ".$status."
+ ";
+ }
+ }
+ $tabelle.='
';
+
+ $datei.="
+
+
+";
+
+ echo '
+
+
+ BIS - Lehrgangsmeldung - '.$lehrgangsname.' ('.$lehrgangsnummer.')
+
+
+
+ ';
+
+ echo "BIS - Studentendaten werden überprüft! Lehrgang: ".$lehrgangsname.' ('.$lehrgangsnummer.")
\n";
+
+ if(strlen(trim($v))>0)
+ {
+ echo "Nicht plausible BIS-Daten (für Meldung ".$ssem."):
";
+ echo nl2br($v."\n\n");
+ }
+
+ $ddd='bisdaten/bismeldung_'.$ssem.'_Lehrgang'.$lehrgangsnummer.'.xml';
+ $dateiausgabe=fopen($ddd,'w');
+ fwrite($dateiausgabe,$datei);
+ fclose($dateiausgabe);
+
+ if(file_exists($ddd))
+ {
+ echo "XML-Datei für BIS-Meldung Lehrgang ".$lehrgangsname.' ('.$lehrgangsnummer.")
";
+ }
+
+ echo '
';
+ echo '
Folgende Personen sind in der Meldung enthalten:
';
+ echo 'Anzahl:'.$anzahl_gemeldet;
+ echo $tabelle;
+}
+?>
diff --git a/vilesci/bis/studentenmeldung.php b/vilesci/bis/studentenmeldung.php
index b7fbbc671..236e8392b 100644
--- a/vilesci/bis/studentenmeldung.php
+++ b/vilesci/bis/studentenmeldung.php
@@ -495,7 +495,7 @@ if(file_exists($eee))
echo '
| UID |
- Matrikelnr |
+ PersKZ |
Nachname |
Vorname |
Status |
@@ -580,6 +580,14 @@ function GenerateXMLStudentBlock($row)
{
$error_log.=(!empty($error_log)?', ':'')."Nachname ('".$row->nachname."')";
}
+ if($row->matr_nr=='')
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Matrikelnummer fehlt";
+ }
+ if($row->matr_nr!='' && $row->matr_nr!=null && mb_strlen(trim($row->matr_nr))!=8)
+ {
+ $error_log.=(!empty($error_log)?', ':'')."Matrikelnummer ('".trim($row->matr_nr)."') ist nicht 8 Zeichen lang";
+ }
if($row->svnr!='' && $row->svnr!=null && mb_strlen(trim($row->svnr))!=10)
{
$error_log.=(!empty($error_log)?', ':'')."SVNR ('".trim($row->svnr)."') ist nicht 10 Zeichen lang";
@@ -970,6 +978,10 @@ function GenerateXMLStudentBlock($row)
$datei.="
".trim($row->matrikelnr)."";
+
+ $datei.="
+ ".$row->matr_nr."";
+
if(!$ausserordentlich)
{
$datei.="
@@ -979,32 +991,21 @@ function GenerateXMLStudentBlock($row)
$datei.="
".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."
".strtoupper($row->geschlecht)."";
- if(($row->svnr!='')&&($row->ersatzkennzeichen!=''))
- {
- $datei.="
+ $datei.="
".$row->vorname."
".$row->nachname."";
+
+ if($row->svnr!='')
+ {
$datei.="
".$row->svnr."";
+ }
+ if($row->ersatzkennzeichen!='')
+ {
$datei.="
".$row->ersatzkennzeichen."";
}
- else
- {
- if($row->svnr!='')
- {
- $datei.="
- ".$row->svnr."";
- }
- if($row->ersatzkennzeichen!='')
- {
- $datei.="
- ".$row->vorname."
- ".$row->nachname."";
- $datei.="
- ".$row->ersatzkennzeichen."";
- }
- }
+
$datei.="
".$row->staatsbuergerschaft."
".$plz."