mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-24 10:22:18 +00:00
This commit is contained in:
@@ -30,7 +30,7 @@
|
||||
</head>
|
||||
<body>';
|
||||
|
||||
echo mktime();
|
||||
echo 'Starte Lehrveranstaltungs Syncronisation '.date('H:i:s').'<br>';
|
||||
flush();
|
||||
|
||||
$plausi_error=0;
|
||||
@@ -44,7 +44,7 @@
|
||||
$anz_lf_update=0;
|
||||
$anz_lf_insert=0;
|
||||
$statistik='';
|
||||
$head_stg_text="Dies ist eine automatische Mail!\n\nFolgende Fehler sind bei der Synchronisation der Lehrveranstaltungen aufgetreten:\n\n";
|
||||
$head_text="Dies ist eine automatische Mail!\n\nFolgende Fehler sind bei der Synchronisation der Lehrveranstaltungen aufgetreten:\n\n";
|
||||
$text='';
|
||||
|
||||
$stg_arr = array();
|
||||
@@ -65,10 +65,78 @@
|
||||
return $kurzbz;
|
||||
}
|
||||
|
||||
function synctabentry_lv($semester, $lv, $lehrveranstaltung_id)
|
||||
{
|
||||
global $conn;
|
||||
|
||||
$qry = "INSERT INTO sync.tbl_synclehrveranstaltung(lv, insemester, lehrveranstaltung_id) VALUES($lv, $semester, $lehrveranstaltung_id);";
|
||||
pg_query($conn, $qry);
|
||||
}
|
||||
|
||||
function synctabentry_lf($semester, $lv, $lehrfach_id)
|
||||
{
|
||||
global $conn;
|
||||
|
||||
$qry = "INSERT INTO sync.tbl_synclehrfach(lv, insemester, lehrfach_id) VALUES($lv, $semester, $lehrfach_id);";
|
||||
pg_query($conn, $qry);
|
||||
}
|
||||
|
||||
if (!@pg_query($conn,'SELECT * FROM sync.tbl_synclehrveranstaltung LIMIT 1;'))
|
||||
{
|
||||
$sql='CREATE TABLE sync.tbl_synclehrveranstaltung (
|
||||
lv integer,
|
||||
insemester integer,
|
||||
lehrveranstaltung_id integer,
|
||||
constraint "pk_tbl_sync_stp_lehrveranstaltung" primary key ("lv","insemester","lehrveranstaltung_id"));
|
||||
Grant select on sync.tbl_synclehrveranstaltung to group "admin";
|
||||
Grant update on sync.tbl_synclehrveranstaltung to group "admin";
|
||||
Grant delete on sync.tbl_synclehrveranstaltung to group "admin";
|
||||
Grant insert on sync.tbl_synclehrveranstaltung to group "admin";';
|
||||
if (!@pg_query($conn,$sql))
|
||||
$text.= "sync.tbl_synclehrveranstaltung: ".pg_last_error($conn)."\n";
|
||||
else
|
||||
$text.= "sync.tbl_synclehrveranstaltung wurde angelegt!\n";
|
||||
}
|
||||
|
||||
if (!@pg_query($conn,'SELECT * FROM sync.tbl_synclehrfach LIMIT 1;'))
|
||||
{
|
||||
$sql='CREATE TABLE sync.tbl_synclehrfach (
|
||||
lv integer,
|
||||
insemester integer,
|
||||
lehrfach_id integer,
|
||||
constraint "pk_tbl_sync_stp_lehrfach" primary key ("lv","insemester","lehrfach_id"));
|
||||
Grant select on sync.tbl_synclehrfach to group "admin";
|
||||
Grant update on sync.tbl_synclehrfach to group "admin";
|
||||
Grant delete on sync.tbl_synclehrfach to group "admin";
|
||||
Grant insert on sync.tbl_synclehrfach to group "admin";';
|
||||
if (!@pg_query($conn,$sql))
|
||||
$text.= "sync.tbl_synclehrfach: ".pg_last_error($conn)."\n";
|
||||
else
|
||||
$text.= "sync.tbl_synclehrfach wurde angelegt!\n";
|
||||
}
|
||||
|
||||
// ******** SYNC START ********** //
|
||||
$qry = "SELECT TOP 30 * FROM lv JOIN studienplaneintrag ON(__LV=_LV)";
|
||||
|
||||
$qry = "SELECT
|
||||
_LV, SUBSTRING(chLVNr, 0, 200) as chLVNr, SUBSTRING(chBezeichnung, 0, 200) as chBezeichnung, _Studiengang, SUBSTRING(meKommentar, 0, 200) as meKommentar, inSemester, inSWS, ECTS
|
||||
FROM
|
||||
lv JOIN studienplaneintrag ON(__LV=_LV)
|
||||
UNION
|
||||
SELECT
|
||||
_LV, SUBSTRING(chLVNr, 0, 200) as chLVNr, SUBSTRING(chBezeichnung, 0, 200) as chBezeichnung, _Studiengang, SUBSTRING(meKommentar, 0, 200) as meKommentar, inSemester, inSWS, ECTS
|
||||
FROM
|
||||
lv JOIN semesterplaneintrag on(__LV=_LV)
|
||||
WHERE
|
||||
semesterplaneintrag._lv not in(SELECT _lv FROM studienplaneintrag)
|
||||
UNION
|
||||
SELECT
|
||||
__LV as _LV, SUBSTRING(chLVNr, 0, 200) as chLVNr, SUBSTRING(chBezeichnung, 0, 200) as chBezeichnung, _Studiengang, SUBSTRING(meKommentar, 0, 200) as meKommentar, 0 as inSemester, 0 as inSWS, 0 as ECTS
|
||||
FROM
|
||||
lv
|
||||
WHERE
|
||||
__LV not in(SELECT _lv FROM studienplaneintrag) AND
|
||||
__LV not in(SELECT _lv FROM semesterplaneintrag)
|
||||
";
|
||||
|
||||
if($result_ext = mssql_query($qry, $conn_ext))
|
||||
{
|
||||
@@ -78,7 +146,7 @@
|
||||
//Lehrveranstaltung
|
||||
|
||||
//Schauen ob dieser Eintrag schon vorhanden ist
|
||||
$qry = "SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung WHERE ext_id='$row_ext->__StudienplanEintrag'";
|
||||
$qry = "SELECT lehrveranstaltung_id FROM sync.tbl_synclehrveranstaltung WHERE lv='$row_ext->_LV' AND insemester='$row_ext->inSemester'";
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
@@ -88,7 +156,7 @@
|
||||
$lehrveranstaltung_id=$row->lehrveranstaltung_id;
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Auslesen der Lehrveranstaltung_id bei ext_id '.$row_ext->__StudienplanEintrag."\n";
|
||||
$text.="Fehler beim Auslesen der Lehrveranstaltung_id fuer lv $row_ext->_LV insemester $row_ext->inSemester\n";
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -140,33 +208,33 @@
|
||||
if($lv_obj->sprache!='German')
|
||||
$updtext.=" Sprache wurde von $lv_obj->sprache auf German geaendert\n";
|
||||
if($lv_obj->ects!=round($row_ext->ECTS,2))
|
||||
$updtext.=" ECTS wurde von $lv_obj->ects auf ".round($row_ext->ects,2)." geaendert\n";
|
||||
if($lv_obj->semesterstunden!=($row_ext->inSWS*ANZAHL_SEMESTERWOCHEN))
|
||||
$updtext.=" ECTS wurde von $lv_obj->ects auf ".round($row_ext->ECTS,2)." geaendert\n";
|
||||
if($lv_obj->semesterstunden!=((int)$row_ext->inSWS*ANZAHL_SEMESTERWOCHEN))
|
||||
$updtext.=" Semesterstunden wurde von $lv_obj->semesterstunden auf ".($row_ext->inSWS*ANZAHL_SEMESTERWOCHEN)." geaendert\n";
|
||||
if($lv_obj->anmerkung!=$row_ext->meKommentar)
|
||||
$updtext.=" Anmerkung wurde von $lv_obj->anmerkung auf $row_ext->meKommentar geaendert\n";
|
||||
$updtext.=" Anmerkung wurde von $lv_obj->anmerkung auf $row_ext->meKommentar geaendert\n";
|
||||
if($lv_obj->lehre != true)
|
||||
$updtext.=" lehre wurde von $lv_obj->lehre auf true geaendert\n";
|
||||
$updtext.=" lehre wurde von $lv_obj->lehre auf true geaendert\n";
|
||||
if($lv_obj->lehreverzeichnis != strtolower(cleankurzbz($row_ext->chLVNr)))
|
||||
$updtext.=" Lehreverzeichnis wurde von $lv_obj->lehreverzeichnis auf ".strtolower(cleankurzbz($row_ext->chLVNr))." geaendert\n";
|
||||
$updtext.=" Lehreverzeichnis wurde von $lv_obj->lehreverzeichnis auf ".strtolower(cleankurzbz($row_ext->chLVNr))." geaendert\n";
|
||||
if($lv_obj->aktiv != true)
|
||||
$updtext.=" aktiv wurde von $lv_obj->aktiv auf true geaendert\n";
|
||||
$updtext.=" aktiv wurde von $lv_obj->aktiv auf true geaendert\n";
|
||||
if($lv_obj->planfaktor != '')
|
||||
$updtext.=" planfaktor wurde von $lv_obj->planfaktor auf '' geaendert\n";
|
||||
$updtext.=" planfaktor wurde von $lv_obj->planfaktor auf '' geaendert\n";
|
||||
if($lv_obj->planlektoren != '')
|
||||
$updtext.=" planlektoren wurde von $lv_obj->planlektoren auf '' geaendert\n";
|
||||
$updtext.=" planlektoren wurde von $lv_obj->planlektoren auf '' geaendert\n";
|
||||
if($lv_obj->planpersonalkosten != '')
|
||||
$updtext.=" lehre wurde von $lv_obj->planpersonalkosten auf '' geaendert\n";
|
||||
if($lv_obj->ext_id != $row_ext->__StudienplanEintrag)
|
||||
$updtext.=" ext_id wurde von $lv_obj->ext_id auf $row_ext->__StudienplanEintrag geaendert\n";
|
||||
$updtext.=" lehre wurde von $lv_obj->planpersonalkosten auf '' geaendert\n";
|
||||
//if($lv_obj->ext_id != $row_ext->__StudienplanEintrag)
|
||||
// $updtext.=" ext_id wurde von $lv_obj->ext_id auf $row_ext->__StudienplanEintrag geaendert\n";
|
||||
if($lv_obj->sort != '')
|
||||
$updtext.=" sort wurde von $sort auf '' geaendert\n";
|
||||
$updtext.=" sort wurde von $sort auf '' geaendert\n";
|
||||
if($lv_obj->zeugnis != true)
|
||||
$updtext.=" zeugnis wurde von $lv_obj->zeugnis auf true geaendert\n";
|
||||
//if($lv_obj->koordinator != '')
|
||||
// $updtext.=" koordinator wurde von $lv_obj->koordinator auf '' geaendert\n";
|
||||
$updtext.=" zeugnis wurde von $lv_obj->zeugnis auf true geaendert\n";
|
||||
if($lv_obj->koordinator != '')
|
||||
$updtext.=" koordinator wurde von $lv_obj->koordinator auf '' geaendert\n";
|
||||
if($lv_obj->projektarbeit != false)
|
||||
$updtext.=" projektarbeit wurde von $lv_obj->projektarbeit auf false geaendert\n";
|
||||
$updtext.=" projektarbeit wurde von $lv_obj->projektarbeit auf false geaendert\n";
|
||||
}
|
||||
$lv_obj->kurzbz = cleankurzbz($row_ext->chLVNr);
|
||||
$lv_obj->bezeichnung = $row_ext->chBezeichnung;
|
||||
@@ -174,7 +242,7 @@
|
||||
$lv_obj->semester = $row_ext->inSemester;
|
||||
$lv_obj->sprache = 'German';
|
||||
$lv_obj->ects = $row_ext->ECTS;
|
||||
$lv_obj->semesterstunden = $row_ext->inSWS*ANZAHL_SEMESTERWOCHEN;
|
||||
$lv_obj->semesterstunden = (int) $row_ext->inSWS*ANZAHL_SEMESTERWOCHEN;
|
||||
$lv_obj->anmerkung = $row_ext->meKommentar;
|
||||
$lv_obj->lehre = true;
|
||||
$lv_obj->lehreverzeichnis = strtolower(cleankurzbz($row_ext->chLVNr));
|
||||
@@ -182,7 +250,7 @@
|
||||
$lv_obj->planfaktor = '';
|
||||
$lv_obj->planlektoren = '';
|
||||
$lv_obj->planpersonalkosten = '';
|
||||
$lv_obj->ext_id = $row_ext->__StudienplanEintrag;
|
||||
$lv_obj->ext_id = '';
|
||||
$lv_obj->sort = '';
|
||||
$lv_obj->zeugnis = true;
|
||||
$lv_obj->koordinator = '';
|
||||
@@ -195,6 +263,7 @@
|
||||
if($lv_obj->new)
|
||||
{
|
||||
$text.= "Lehrveranstaltung $lv_obj->bezeichnung/$lv_obj->semester wurde neu angelegt\n";
|
||||
synctabentry_lv($lv_obj->semester, $row_ext->_LV, $lv_obj->lehrveranstaltung_id);
|
||||
$anz_insert++;
|
||||
}
|
||||
else
|
||||
@@ -205,7 +274,7 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.= "Fehler beim Speichern von $lv_obj->bezeichnung/$lv_obj->semester/$lv_obj->lehrveranstaltung_id:".$lv_obj->errormsg;
|
||||
$text.= "Fehler beim Speichern von $lv_obj->bezeichnung/$lv_obj->semester/$lv_obj->lehrveranstaltung_id:".$lv_obj->errormsg.' '.pg_last_error($conn);
|
||||
if($lv_obj->new)
|
||||
$insert_error++;
|
||||
else
|
||||
@@ -216,7 +285,7 @@
|
||||
|
||||
// *********** Lehrfach **************
|
||||
//Schauen ob dieser Eintrag schon vorhanden ist
|
||||
$qry = "SELECT lehrfach_id FROM lehre.tbl_lehrfach WHERE ext_id='$row_ext->__StudienplanEintrag'";
|
||||
$qry = "SELECT lehrfach_id FROM sync.tbl_synclehrfach WHERE lv='$row_ext->_LV' AND insemester='$row_ext->inSemester'";
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
@@ -226,7 +295,7 @@
|
||||
$lehrfach_id=$row->lehrfach_id;
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Auslesen der Lehrfach_id bei ext_id '.$row_ext->__StudienplanEintrag."\n";
|
||||
$text.="Fehler beim Auslesen der Lehrfach_id bei lv $row_ext->_LV semester $row_ext->inSemester\n";
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -273,20 +342,18 @@
|
||||
$updtext.=" Semester wurde von $lv_obj->semester auf $row_ext->inSemester geaendert\n";
|
||||
if($lf_obj->sprache!='German')
|
||||
$updtext.=" Sprache wurde von $lf_obj->sprache auf German geaendert\n";
|
||||
if($lv_obj->ects!=round($row_ext->ECTS,2))
|
||||
$updtext.=" ECTS wurde von $lv_obj->ects auf ".round($row_ext->ects,2)." geaendert\n";
|
||||
if($lf_obj->fachbereich_kurzbz!='Dummy')
|
||||
$updtext.=" Fachbereich_kurzbz wurde von $lf_obj->fachbereich_kurzbz auf 'Dummy' geaendert\n";
|
||||
if($lf_obj->kurzbz != cleankurzbz($row_ext->chLVNr))
|
||||
$updtext.=" Kurzbz wurde von $lf_obj->kurzbz auf ".cleankurzbz($row_ext->chLVNr)." geaendert\n";
|
||||
$updtext.=" Kurzbz wurde von $lf_obj->kurzbz auf ".cleankurzbz($row_ext->chLVNr)." geaendert\n";
|
||||
if($lf_obj->bezeichnung!=$row_ext->chBezeichnung)
|
||||
$updtext.=" Bezeichnung wurde von $lf_obj->bezeichnung auf $row_ext->chBezeichnung geaendert\n";
|
||||
if($lf_obj->farbe != '')
|
||||
$updtext.=" farbe wurde von $lf_obj->farbe auf '' geaendert\n";
|
||||
$updtext.=" farbe wurde von $lf_obj->farbe auf '' geaendert\n";
|
||||
if($lf_obj->aktiv != true)
|
||||
$updtext.=" aktiv wurde von $lf_obj->aktiv auf true geaendert\n";
|
||||
if($lf_obj->ext_id != $row_ext->__StudienplanEintrag)
|
||||
$updtext.=" ext_id wurde von $lf_obj->ext_id auf $row_ext->__StudienplanEintrag geaendert\n";
|
||||
$updtext.=" aktiv wurde von $lf_obj->aktiv auf true geaendert\n";
|
||||
//if($lf_obj->ext_id != $row_ext->__StudienplanEintrag)
|
||||
// $updtext.=" ext_id wurde von $lf_obj->ext_id auf $row_ext->__StudienplanEintrag geaendert\n";
|
||||
}
|
||||
|
||||
$lf_obj->kurzbz = cleankurzbz($row_ext->chLVNr);
|
||||
@@ -297,8 +364,8 @@
|
||||
$lf_obj->aktiv = true;
|
||||
$lf_obj->fachbereich_kurzbz = 'Dummy';
|
||||
$lf_obj->farbe = '';
|
||||
$lf_obj->ext_id = $row_ext->__StudienplanEintrag;
|
||||
echo "<br>Ext_id LF: $lf_obj->ext_id";
|
||||
$lf_obj->ext_id = '';
|
||||
|
||||
if($updtext!='' || $lf_obj->new)
|
||||
{
|
||||
if($lf_obj->save())
|
||||
@@ -306,6 +373,7 @@
|
||||
if($lf_obj->new)
|
||||
{
|
||||
$text.= "Lehrfach $lf_obj->bezeichnung/$lf_obj->semester wurde neu angelegt\n";
|
||||
synctabentry_lf($lf_obj->semester, $row_ext->_LV, $lf_obj->lehrfach_id);
|
||||
$anz_lf_insert++;
|
||||
}
|
||||
else
|
||||
@@ -316,7 +384,7 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.= "Fehler beim Speichern von $lf_obj->bezeichnung/$lf_obj->semester/$lf_obj->lehrfach_id:".$lf_obj->errormsg;
|
||||
$text.= "Fehler beim Speichern von $lf_obj->bezeichnung/$lf_obj->semester/$lf_obj->lehrfach_id:".$lf_obj->errormsg.' '.pg_last_error($conn);
|
||||
if($lf_obj->new)
|
||||
$insert_lf_error++;
|
||||
else
|
||||
@@ -326,6 +394,8 @@
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
$text.= "Fehler beim Laden der Lehrveranstaltungen\n\n";
|
||||
|
||||
$statistik .="LVs Import: $lvs_gesamt\n";
|
||||
$statistik .="Neue LVs: $anz_insert\n";
|
||||
@@ -337,7 +407,14 @@
|
||||
$statistik .="Fehler beim Anlegen von LF: $insert_lf_error\n";
|
||||
$statistik .="Fehler beim Aktualisieren von LF: $update_lf_error\n\n";
|
||||
|
||||
$text = $statistik.'<br><br>'.$text;
|
||||
$text = $statistik."\n\n".$text;
|
||||
$to = 'oesi@technikum-wien.at';
|
||||
//$to = $adress_ext;
|
||||
|
||||
if(mail($to, 'SYNC Lehrveranstaltung',$head_text.$text, "From: vilesci@technikum-wien.at"))
|
||||
echo "Mail wurde an $to versandt<br><br>";
|
||||
else
|
||||
echo "Fehler beim Senden an $to<br><br>";
|
||||
|
||||
echo nl2br($text);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user