From dd2509cc3bec303d42ab3710a387b63b41c2f96f Mon Sep 17 00:00:00 2001 From: Rudolf Hangl Date: Tue, 24 Apr 2007 15:05:14 +0000 Subject: [PATCH] --- admin/sync/fas/sync_fas_vilesci_student.php | 23 +- .../sync_fas_vilescil_bakkalaureatsarbeit.php | 837 +++++++++++++++++- 2 files changed, 823 insertions(+), 37 deletions(-) diff --git a/admin/sync/fas/sync_fas_vilesci_student.php b/admin/sync/fas/sync_fas_vilesci_student.php index 271aa1fcb..92d19a32b 100644 --- a/admin/sync/fas/sync_fas_vilesci_student.php +++ b/admin/sync/fas/sync_fas_vilesci_student.php @@ -2216,31 +2216,14 @@ echo nl2br("Studenten: Gesamt: ".$anzahl_student_gesamt." / Eingef $error_log="Sync Student\n------------\n\n".$text4."\n".$text3."\n".$text5."\n".$text2."\n".$text1; echo nl2br($error_log); +mail($adress, 'SYNC-Fehler Student von '.$_SERVER['HTTP_HOST'], $error_log,"From: vilesci@technikum-wien.at"); -if(!mail($adress, 'SYNC-Fehler Student von '.$_SERVER['HTTP_HOST'], $error_log,"From: vilesci@technikum-wien.at")) -{ - echo "SYNC-Fehler-Mail an '".$adress."' konnte nicht verschickt werden!
"; -} -else -{ - echo "SYNC-Fehler-Mail wurde verschickt an ".$adress."
"; -} - - - -if(!mail($adress, 'SYNC Student von '.$_SERVER['HTTP_HOST'], "Sync Student\n------------\n\nPersonen ohne Reihungstest: ".$notest." \n\n" +mail($adress, 'SYNC Student von '.$_SERVER['HTTP_HOST'], "Sync Student\n------------\n\nPersonen ohne Reihungstest: ".$notest." \n\n" ."Personen: Gesamt: ".$anzahl_person_gesamt." / Eingefügt: ".$anzahl_person_insert." / Geändert: ".$anzahl_person_update." / Fehler: ".$anzahl_fehler_person."\n" ."Prestudenten: Gesamt: ".$anzahl_pre_gesamt." / Eingefügt: ".$anzahl_pre_insert." / Geändert: ".$anzahl_pre_update." / Fehler: ".$anzahl_fehler_pre."\n" ."Benutzer: Gesamt: ".$anzahl_benutzer_gesamt." / Eingefügt: ".$anzahl_benutzer_insert." / Geändert: ".$anzahl_benutzer_update." / Fehler: ".$anzahl_fehler_benutzer."\n" ."Nicht-Studenten: ".$anzahl_nichtstudenten."\n" -."Studenten: Gesamt: ".$anzahl_student_gesamt." / Eingefügt: ".$anzahl_student_insert." / Geändert: ".$anzahl_student_update." / Fehler: ".$anzahl_fehler_student."\n\n".$dateiausgabe."Fertig: ".date("d.m.Y H:i:s")."\n\n".$ausgabe, "From: vilesci@technikum-wien.at")) -{ - echo "SYNC-Mail an '".$adress."' konnte nicht verschickt werden!
"; -} -else -{ - echo "SYNC-Mail wurde verschickt an ".$adress."
"; -} +."Studenten: Gesamt: ".$anzahl_student_gesamt." / Eingefügt: ".$anzahl_student_insert." / Geändert: ".$anzahl_student_update." / Fehler: ".$anzahl_fehler_student."\n\n".$dateiausgabe."Fertig: ".date("d.m.Y H:i:s")."\n\n".$ausgabe, "From: vilesci@technikum-wien.at"); ?> diff --git a/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php b/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php index e306efc34..4dd899c45 100644 --- a/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php +++ b/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php @@ -59,10 +59,11 @@ $qry_mail = "SELECT * FROM bakkalaureatsarbeit;"; if($result = pg_query($conn_fas, $qry_main)) { echo nl2br("Bachelorarbeit Sync\n------------------------\n"); + echo nl2br("Beginn: ".date("d.m.Y H:i:s")." von ".$_SERVER['HTTP_HOST']."\n\n"); $anzahl_quelle=pg_num_rows($result); while($row = pg_fetch_object($result)) { - pg_query($conn_fas, "BEGIN"); + pg_query($conn, "BEGIN"); $error=false; $error_log=''; $projektarbeitprojekttyp_kurzbz ='Bachelor'; @@ -200,16 +201,16 @@ if($result = pg_query($conn_fas, $qry_main)) } } - $qry2="SELECT projektarbeit_id, ext_id FROM lehre.tbl_projektarbeit WHERE projekttyp_kurzbz='Bachelorarbeit' AND ext_id='".$row->bakkalaureatsarbeit_pk."';"; - if($result2 = pg_query($conn, $qry2)) + $qry3="SELECT projektarbeit_id, ext_id FROM lehre.tbl_projektarbeit WHERE projekttyp_kurzbz='Bachelorarbeit' AND ext_id='".$row->bakkalaureatsarbeit_pk."';"; + if($result3 = pg_query($conn, $qry3)) { - if(pg_num_rows($result2)>0) //eintrag gefunden + if(pg_num_rows($result3)>0) //eintrag gefunden { - if($row2=pg_fetch_object($result2)) + if($row3=pg_fetch_object($result3)) { // update, wenn datensatz bereits vorhanden $projektarbeitnew=false; - $projektarbeitprojektarbeit_id=$row2->projektarbeit_id; + $projektarbeitprojektarbeit_id=$row3->projektarbeit_id; } } else @@ -472,7 +473,7 @@ if($result = pg_query($conn_fas, $qry_main)) { if($lehreinheitnew) { - $lehreinheitinsert++; + $anzahl_le_insert++; $qry = "SELECT currval('lehre.tbl_lehreinheit_lehreinheit_id_seq') AS id;"; if($rowu=pg_fetch_object(pg_query($conn,$qry))) $projektarbeitlehreinheit_id=$rowu->id; @@ -485,55 +486,857 @@ if($result = pg_query($conn_fas, $qry_main)) } else { - $lehreinheitupdate++; + $anzahl_le_update++; } + $anzahl_le_gesamt++; } if(!$error) { //pa anlegen - - if(!$projektarbeit->save()) + if($projektarbeitnew) { - $error_log.=$projektarbeit->errormsg."\n"; - $anzahl_fehler++; + //Neuen Datensatz einfuegen + + $qry='INSERT INTO lehre.tbl_projektarbeit (projekttyp_kurzbz, titel, lehreinheit_id, student_uid, firma_id, note, punkte, + beginn, ende, faktor, freigegeben, gesperrtbis, stundensatz, gesamtstunden, themenbereich, anmerkung, + ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('. + myaddslashes($projektarbeitprojekttyp_kurzbz).', '. + myaddslashes($projektarbeittitel).', '. + myaddslashes($projektarbeitlehreinheit_id).', '. + myaddslashes($projektarbeitstudent_uid).', '. + myaddslashes($projektarbeitfirma_id).', '. + myaddslashes($projektarbeitnote).', '. + myaddslashes($projektarbeitpunkte).', '. + myaddslashes($projektarbeitbeginn).', '. + myaddslashes($projektarbeitende).', '. + myaddslashes($projektarbeitfaktor).', '. + ($projektarbeitfreigegeben?'true':'false').', '. + myaddslashes($projektarbeitgesperrtbis).', '. + myaddslashes($projektarbeitstundensatz).', '. + myaddslashes($projektarbeitgesamtstunden).', '. + myaddslashes($projektarbeitthemenbereich).', '. + myaddslashes($projektarbeitanmerkung).', '. + myaddslashes($projektarbeitext_id).', now(), '. + myaddslashes($projektarbeitinsertvon).', now(), '. + myaddslashes($projektarbeitupdatevon).');'; + $ausgabe.="Projektarbeit angelegt: Student='".$projektarbeitstudent_uid."' und Lehreinheit='".$projektarbeitlehreinheit_id."'.\n"; + } + else + { + //Updaten des bestehenden Datensatzes + + $updatep=false; + if($row3->projekttyp_kurzbz!=$projektarbeitprojekttyp_kurzbz) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Projekttyp: '".$projektarbeitprojekttyp_kurzbz."' (statt '".$row3->projekttyp_kurzbz."')"; + } + else + { + $ausgabe_pa="Projekttyp: '".$projektarbeitprojekttyp_kurzbz."' (statt '".$row3->projekttyp_kurzbz."')"; + } + } + if($row3->titel!=$projektarbeittitel) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Titel: '".$projektarbeittitel."' (statt '".$row3->titel."')"; + } + else + { + $ausgabe_pa="Titel: '".$projektarbeittitel."' (statt '".$row3->titel."')"; + } + } + if($row3->lehreinheit_id!=$projektarbeitlehreinheit_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Lehreinheit: '".$projektarbeitlehreinheit_id."' (statt '".$row3->lehreinheit_id."')"; + } + else + { + $ausgabe_pa="Lehreinheit: '".$projektarbeitlehreinheit_id."' (statt '".$row3->lehreinheit_id."')"; + } + } + if($row3->student_uid!=$projektarbeitstudent_uid) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Student: '".$projektarbeitstudent_uid."' (statt '".$row3->student_uid."')"; + } + else + { + $ausgabe_pa="Student: '".$projektarbeitstudent_uid."' (statt '".$row3->student_uid."')"; + } + } + if($row3->firma_id!=$projektarbeitfirma_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Firma: '".$projektarbeitfirma_id."' (statt '".$row3->firma_id."')"; + } + else + { + $ausgabe_pa="Firma: '".$projektarbeitfirma_id."' (statt '".$row3->firma_id."')"; + } + } + if($row3->note!=$projektarbeitnote) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Note: '".$projektarbeitnote."' (statt '".$row3->note."')"; + } + else + { + $ausgabe_pa="Note: '".$projektarbeitnote."' (statt '".$row3->note."')"; + } + } + if($row3->punkte!=$projektarbeitpunkte) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Punkte: '".$projektarbeitpunkte."' (statt '".$row3->punkte."')"; + } + else + { + $ausgabe_pa="Punkte: '".$projektarbeitpunkte."' (statt '".$row3->punkte."')"; + } + } + if($row3->beginn!=$projektarbeitbeginn) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Beginn: '".$projektarbeitbeginn."' (statt '".$row3->beginn."')"; + } + else + { + $ausgabe_pa="Beginn: '".$projektarbeitbeginn."' (statt '".$row3->beginn."')"; + } + } + if($row3->ende!=$projektarbeitende) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Ende: '".$projektarbeitende."' (statt '".$row3->ende."')"; + } + else + { + $ausgabe_pa="Ende: '".$projektarbeitende."' (statt '".$row3->ende."')"; + } + } + if($row3->faktor!=$projektarbeitfaktor) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Faktor: '".$projektarbeitfaktor."' (statt '".$row3->faktor."')"; + } + else + { + $ausgabe_pa="Faktor: '".$projektarbeitfaktor."' (statt '".$row3->faktor."')"; + } + } + if($row3->freigegeben!=($projektarbeitfreiggegeben?'t':'f')) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", freigegeben: '".($projektarbeitfreigegeben?'true':'false')."' (statt '".$row3->freigegeben."')"; + } + else + { + $ausgabe_pa="freigegeben: '".($projektarbeitfreigegeben?'true':'false')."' (statt '".$row3->freigegeben."')"; + } + } + if($row3->gesperrtbis!=$projektarbeitgesperrtbis) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", gesperrt bis: '".$projektarbeitgesperrtbis."' (statt '".$row3->gesperrtbis."')"; + } + else + { + $ausgabe_pa="gesperrt bis: '".$projektarbeitgesperrtbis."' (statt '".$row3->gesperrtbis."')"; + } + } + if($row3->stundensatz!=$projektarbeitstundensatz) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Stundensatz: '".$projektarbeitstundensatz."' (statt '".$row3->stundensatz."')"; + } + else + { + $ausgabe_pa="Stundensatz: '".$projektarbeitstundensatz."' (statt '".$row3->stundensatz."')"; + } + } + if($row3->gesamtstunden!=$projektarbeitgesamtstunden) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Gesamtstunden: '".$projektarbeitgesamtstunden."' (statt '".$row3->gesamtstunden."')"; + } + else + { + $ausgabe_pa="Gesamtstunden: '".$projektarbeitgesamtstunden."' (statt '".$row3->gesamtstunden."')"; + } + } + if($row3->themenbereich!=$projektarbeitthemenbereich) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Themenbereich: '".$projektarbeitthemenbereich."' (statt '".$row3->themenbereich."')"; + } + else + { + $ausgabe_pa="Themenbereich: '".$projektarbeitthemenbereich."' (statt '".$row3->themenbereich."')"; + } + } + if($row3->anmerkung!=$projektarbeitanmerkung) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Anmerkung: '".$projektarbeitanmerkung."' (statt '".$row3->anmerkung."')"; + } + else + { + $ausgabe_pa="Anmerkung: '".$projektarbeitanmerkung."' (statt '".$row3->anmerkung."')"; + } + } + if($row3->anmerkung!=$projektarbeitanmerkung) + { + $updatep=true; + if(strlen(trim($ausgabe_pa))>0) + { + $ausgabe_pa.=", Anmerkung: '".$projektarbeitanmerkung."' (statt '".$row3->anmerkung."')"; + } + else + { + $ausgabe_pa="Anmerkung: '".$projektarbeitanmerkung."' (statt '".$row3->anmerkung."')"; + } + } + if($updatep) + { + $qry='UPDATE lehre.tbl_projektarbeit SET '. + 'projekttyp_kurzbz='.myaddslashes($projektarbeitprojekttyp_kurzbz).', '. + 'titel='.myaddslashes($projektarbeittitel).', '. + 'lehreinheit_id='.myaddslashes($projektarbeitlehreinheit_id).', '. + 'student_uid='.myaddslashes($projektarbeitstudent_uid).', '. + 'firma_id='.myaddslashes($projektarbeitfirma_id).', '. + 'note='.myaddslashes($projektarbeitnote).', '. + 'punkte='.myaddslashes($projektarbeitpunkte).', '. + 'beginn='.myaddslashes($projektarbeitbeginn).', '. + 'ende='.myaddslashes($projektarbeitende).', '. + 'faktor='.myaddslashes($projektarbeitfaktor).', '. + 'freigegeben='.($projektarbeitfreigegeben?'true':'false').', '. + 'gesperrtbis='.myaddslashes($projektarbeitgesperrtbis).', '. + 'stundensatz='.myaddslashes($projektarbeitstundensatz).', '. + 'gesamtstunden='.myaddslashes($projektarbeitgesamtstunden).', '. + 'themenbereich='.myaddslashes($projektarbeitthemenbereich).', '. + 'anmerkung='.myaddslashes($projektarbeitanmerkung).', '. + 'updateamum= now(), '. + 'updatevon='.myaddslashes($projektarbeitupdatevon).' '. + //'firmentyp='.myaddslashes($projektarbeitfirmentyp_kurzbz).' '. + 'WHERE projektarbeit_id='.myaddslashes($projektarbeitprojektarbeit_id).';'; + $ausgabe.="Projektarbeit aktualisiert: Student='".$projektarbeitstudent_uid."' und Lehreinheit='".$projektarbeitlehreinheit_id."':".$ausgabe_pa.".\n"; + } + } + //echo $qry; + if(pg_query($this->conn,$qry)) + { + $ausgabe_pa=''; + if($projektarbeitnew) + { + $anzahl_pa_insert++; + } + else + { + if($updatep) + { + $anzahl_pa_update++; + } + } + $anzahl_pa_gesamt++; } else { - if($projektarbeit->new=true) + $ausgabe_pa=''; + $error=true; + $error_log.= "*****\nFehler beim Speichern des Projektarbeits-Datensatzes: ".$projektarbeitlehreinheit_id."\n ".$qry."\n"; + $anzahl_fehler++; + } + if(!$error) + { + //projektbetreuer 2x + + $qry="SELECT person_portal FROM sync.tbl_syncperson WHERE person_fas='$row->betreuer_fk'"; //betreuer_fk -> person_id + if($resultu = pg_query($conn, $qry)) { - $ausgabe.="Projektarbeit angelegt: Student='".$projektarbeit->student_uid."' und Lehreinheit='".$projektarbeit->lehreinheit_id."'.\n"; + if($rowu=pg_fetch_object($resultu)) + { + $projektbetreuerperson_id=$rowu->person_portal; + } + else + { + $error=true; + $error_log.="Betreuer mit person_fk: $row->betreuer_fk konnte in syncperson nicht gefunden werden.\n"; + } + } + $projektbetreuerprojektarbeit_id =$projektarbeitprojektarbeit_id; + $projektbetreuernote =''; + $projektbetreuerbetreuerart ='b'; //b=Bachelorarbeitsbetreuer + $projektbetreuerfaktor ='1,0'; + $projektbetreuername =''; + $projektbetreuerpunkte =''; + $projektbetreuerstunden =$row->betreuerstunden; + $projektbetreuerstundensatz =$row->betreuerstundenhonorar; + //$projektbetreuerupdateamum =$row->; + $projektbetreuerupdatevon ="SYNC"; + //$projektbetreuerinsertamum =$row->creationdate; + $projektbetreuerinsertvon ="SYNC"; + $projektbetreuerext_id =$row->bakkalaureatsarbeit_pk; + + $qry2="SELECT * FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".$projektarbeitprojektarbeit_id."' AND person_id='".$projektbetreuerperson_id."'AND betreuerart='".$projektbetreuerbetreuerart."';"; + if($result2 = pg_query($conn, $qry2)) + { + if(pg_num_rows($result2)>0) //wenn dieser eintrag schon vorhanden ist + { + if($row2=pg_fetch_object($result2)) + { + $projektbetreuerperson_id=$row2->person_id; + $projektbetreuernew=false; + } + else $projektbetreuernew=true; + } + else $projektbetreuernew=true; + } + else + { + $error=true; + $error_log.='Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: '.$row->betreuer_fk."\n"; + } + if($projektbetreuernew) + { + $qry='INSERT INTO lehre.tbl_projektbetreuer (person_id, projektarbeit_id, note, betreuerart, faktor, name, + punkte, stunden, stundensatz, ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('. + myaddslashes($projektbetreuerperson_id).', '. + myaddslashes($projektbetreuerprojektarbeit_id).', '. + myaddslashes($projektbetreuernote).', '. + myaddslashes($projektbetreuerbetreuerart).', '. + myaddslashes($projektbetreuerfaktor).', '. + myaddslashes($projektbetreuername).', '. + myaddslashes($projektbetreuerpunkte).', '. + myaddslashes($projektbetreuerstunden).', '. + myaddslashes($projektbetreuerstundensatz).', '. + myaddslashes($projektbetreuerext_id).', now(), '. + myaddslashes($projektbetreuerinsertvon).', now(), '. + myaddslashes($projektbetreuerupdatevon).');'; + $ausgabe.="Bachelorarbeitsbetreuer eingefügt: UID='".$projektbetreuerperson_id."' und Projektarbeit='".$projektarbeitlehreinheit_id."'.\n"; } else { - $ausgabe="Projektarbeit aktualisiert: Student='".$projektarbeit->student_uid."' und Lehreinheit='".$projektarbeit->lehreinheit_id."'.\n"; + $updatep=false; + if($row2->person_id!=$projektbetreuerperson_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuer: '".$projektbetreuerperson_id."' (statt '".$row2->person_id."')"; + } + else + { + $ausgabe_pb="Betreuer: '".$projektbetreuerperson_id."' (statt '".$row2->person_id."')"; + } + } + if($row2->projektarbeit_id!=$projektbetreuerprojektarbeit_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Projektarbeit: '".$projektbetreuerprojektarbeit_id."' (statt '".$row2->projektarbeit_id."')"; + } + else + { + $ausgabe_pb="Projektarbeit: '".$projektbetreuerprojektarbeit_id."' (statt '".$row2->projektarbeit_id."')"; + } + } + if($row2->note!=$projektbetreuernote) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Note: '".$projektbetreuernote."' (statt '".$row2->note."')"; + } + else + { + $ausgabe_pb="Note: '".$projektbetreuernote."' (statt '".$row2->note."')"; + } + } + if($row2->betreuerart!=$projektbetreuerbetreuerart) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart."')"; + } + else + { + $ausgabe_pb="Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart."')"; + } + } + if($row2->faktor!=$projektbetreuerfaktor) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Faktor: '".$projektbetreuerfaktor."' (statt '".$row2->faktor."')"; + } + else + { + $ausgabe_pb="Faktor: '".$projektbetreuerfaktor."' (statt '".$row2->faktor."')"; + } + } + if($row2->name!=$projektbetreuername) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + else + { + $ausgabe_pb="Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + } + if($row2->punkte!=$projektbetreuerpunkte) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Punkte: '".$projektbetreuerpunkte."' (statt '".$row2->punkte."')"; + } + else + { + $ausgabe_pb="Punkte: '".$projektbetreuerpunkte."' (statt '".$row2->punkte."')"; + } + } + if($row2->stunden!=$projektbetreuerstunden) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuerstunden: '".$projektbetreuerstunden."' (statt '".$row2->stunden."')"; + } + else + { + $ausgabe_pb="Betreuerstunden: '".$projektbetreuerstunden."' (statt '".$row2->stunden."')"; + } + } + if($row2->stundensatz!=$projektbetreuerstundensatz) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + else + { + $ausgabe_pb="Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + } + if($updatep) + { + $qry='UPDATE lehre.tbl_projektbetreuer SET '. + 'person_id='.myaddslashes($projektbetreuerperson_id).', '. + 'projektarbeit_id='.myaddslashes($projektbetreuerprojektarbeit_id).', '. + 'note='.myaddslashes($projektbetreuernote).', '. + 'betreuerart='.myaddslashes($projektbetreuerbetreuerart).', '. + 'faktor='.myaddslashes($projektbetreuerfaktor).', '. + 'name='.myaddslashes($projektbetreuername).', '. + 'punkte'.myaddslashes($projektbetreuerpunkte).', '. + 'stunden='.myaddslashes($projektbetreuerstunden).', '. + 'stundensatz='.myaddslashes($projektbetreuerstundensatz).', '. + 'updateamum= now(), '. + 'updatevon='.myaddslashes($projektbetreuerupdatevon).' '. + 'WHERE projektarbeit_id='.myaddslashes($projektbetreuerprojektarbeit_id).';'; + $ausgabe.="Bachelorarbeitsbetreuer aktualisiert: UID='".$projektbetreuerperson_id."' und Projektarbeit='".$projektarbeitlehreinheit_id."':".$ausgabe_pb.".\n"; + } } - $anzahl_eingefuegt++; - } + if(pg_query($conn,$qry)) + { + if($projektbetreuernew) + { + $anzahl_pbb_insert++; + } + else + { + if($updatep) + { + $anzahl_pbb_update++; + } + } + $anzahl_pbb_gesamt++; + } + else + { + $error=true; + $error_log.='Fehler beim Speichern des Bachelorarbeitsbetreuer-Datensatzes:'.$projektbetreuerperson_id." \n".$qry."\n"; + $ausgabe_pb=''; + } + + $qry="SELECT person_portal FROM sync.tbl_syncperson WHERE person_fas='$row->begutachter_fk'"; //begutachter_fk -> person_id + if($resultu = pg_query($conn, $qry)) + { + if($rowu=pg_fetch_object($resultu)) + { + $projektbetreuerperson_id=$rowu->person_portal; + } + else{ + $error=true; + $error_log.="Begutachter mit person_fk: $row->betreuer_fk konnte in syncperson nicht gefunden werden.\n"; + } + } + //$projektbetreuer->person_id =''; + $projektbetreuerprojektarbeit_id =$projektarbeitprojektarbeit_id; + $projektbetreuernote =$row->note; + $projektbetreuerbetreuerart ='g'; //g=Bachelorarbeitsbegutachter + $projektbetreuerfaktor ='1,0'; + $projektbetreuername =''; + $projektbetreuerpunkte =$row->punkte; + $projektbetreuerstunden =''; + $projektbetreuerstundensatz =''; + //$projektbetreuerupdateamum =$row->; + $projektbetreuerupdatevon ="SYNC"; + //$projektbetreuerinsertamum =$row->; + $projektbetreuerinsertvon ="SYNC"; + $projektbetreuerext_id =$row->bakkalaureatsarbeit_pk; + $qry2="SELECT person_id FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".$projektbetreuerprojektarbeit_id."' AND person_id='".$projektbetreuerperson_id."'AND betreuerart='".$projektbetreuerbetreuerart."';"; + if($resultu = pg_query($conn, $qry2)) + { + if(pg_num_rows($resultu)>0) //wenn dieser eintrag schon vorhanden ist + { + if($rowu=pg_fetch_object($resultu)) + { + $projektbetreuerperson_id=$rowu->person_id; + $projektbetreuernew=false; + } + else $projektbetreuernew=true; + } + else $projektbetreuernew=true; + } + else + { + $error=true; + $error_log.='Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: '.$row->betreuer_fk."\n"; + } + if($error) + { + if($projektbetreuernew) + { + $qry='INSERT INTO lehre.tbl_projektbetreuer (person_id, projektarbeit_id, note, betreuerart, faktor, name, + punkte, stunden, stundensatz, ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('. + myaddslashes($projektbetreuerperson_id).', '. + myaddslashes($projektbetreuerprojektarbeit_id).', '. + myaddslashes($projektbetreuernote).', '. + myaddslashes($projektbetreuerbetreuerart).', '. + myaddslashes($projektbetreuerfaktor).', '. + myaddslashes($projektbetreuername).', '. + myaddslashes($projektbetreuerpunkte).', '. + myaddslashes($projektbetreuerstunden).', '. + myaddslashes($projektbetreuerstundensatz).', '. + myaddslashes($projektbetreuerext_id).', now(), '. + myaddslashes($projektbetreuerinsertvon).', now(), '. + myaddslashes($projektbetreuerupdatevon).');'; + $ausgabe.="Bachelorarbeitsbegutachter eingefügt: UID='".$projektbetreuerperson_id."' und Projektarbeit='".$projektarbeitlehreinheit_id."'.\n"; + } + else + { + + $updatep=false; + if($row2->person_id!=$projektbetreuerperson_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuer: '".$projektbetreuerperson_id."' (statt '".$row2->person_id."')"; + } + else + { + $ausgabe_pb="Betreuer: '".$projektbetreuerperson_id."' (statt '".$row2->person_id."')"; + } + } + if($row2->projektarbeit_id!=$projektbetreuerprojektarbeit_id) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Projektarbeit: '".$projektbetreuerprojektarbeit_id."' (statt '".$row2->projektarbeit_id."')"; + } + else + { + $ausgabe_pb="Projektarbeit: '".$projektbetreuerprojektarbeit_id."' (statt '".$row2->projektarbeit_id."')"; + } + } + if($row2->note!=$projektbetreuernote) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Note: '".$projektbetreuernote."' (statt '".$row2->note."')"; + } + else + { + $ausgabe_pb="Note: '".$projektbetreuernote."' (statt '".$row2->note."')"; + } + } + if($row2->betreuerart!=$projektbetreuerbetreuerart) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart."')"; + } + else + { + $ausgabe_pb="Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart."')"; + } + } + if($row2->faktor!=$projektbetreuerfaktor) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Faktor: '".$projektbetreuerfaktor."' (statt '".$row2->faktor."')"; + } + else + { + $ausgabe_pb="Faktor: '".$projektbetreuerfaktor."' (statt '".$row2->faktor."')"; + } + } + if($row2->name!=$projektbetreuername) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + else + { + $ausgabe_pb="Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + } + if($row2->punkte!=$projektbetreuerpunkte) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Punkte: '".$projektbetreuerpunkte."' (statt '".$row2->punkte."')"; + } + else + { + $ausgabe_pb="Punkte: '".$projektbetreuerpunkte."' (statt '".$row2->punkte."')"; + } + } + if($row2->stunden!=$projektbetreuerstunden) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuerstunden: '".$projektbetreuerstunden."' (statt '".$row2->stunden."')"; + } + else + { + $ausgabe_pb="Betreuerstunden: '".$projektbetreuerstunden."' (statt '".$row2->stunden."')"; + } + } + if($row2->stundensatz!=$projektbetreuerstundensatz) + { + $updatep=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + else + { + $ausgabe_pb="Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + } + if($updatep) + { + $qry='UPDATE lehre.tbl_projektbetreuer SET '. + 'person_id='.myaddslashes($projektbetreuerperson_id).', '. + 'projektarbeit_id='.myaddslashes($projektbetreuerprojektarbeit_id).', '. + 'note='.myaddslashes($projektbetreuernote).', '. + 'betreuerart='.myaddslashes($projektbetreuerbetreuerart).', '. + 'faktor='.myaddslashes($projektbetreuerfaktor).', '. + 'name='.myaddslashes($projektbetreuername).', '. + 'punkte'.myaddslashes($projektbetreuerpunkte).', '. + 'stunden='.myaddslashes($projektbetreuerstunden).', '. + 'stundensatz='.myaddslashes($projektbetreuerstundensatz).', '. + 'updateamum= now(), '. + 'updatevon='.myaddslashes($projektbetreuerupdatevon).' '. + 'WHERE projektarbeit_id='.myaddslashes($projektbetreuerprojektarbeit_id).';'; + $ausgabe.="Bachelorarbeitsbegutachter aktualisiert: UID='".$projektbetreuerperson_id."' und Projektarbeit='".$projektarbeitlehreinheit_id."':".$ausgabe_pb.".\n"; + } + } + if(pg_query($conn,$qry)) + { + if($projektbetreuernew) + { + $anzahl_pbg_insert++; + } + else + { + if($updatep) + { + $anzahl_pbg_update++; + } + } + $anzahl_pbg_gesamt++; + } + else + { + $error=true; + $error_log.='Fehler beim Speichern des Bachelorarbeitsbetreuer-Datensatzes:'.$projektbetreuerperson_id." \n".$qry."\n"; + $ausgabe_pb=''; + } + if($error) + { + //ROLLBACK + $anzahl_fehler_pbg++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R1\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); + } + else + { + //COMMIT + pg_query($conn,'COMMIT;'); + $ausgabe_all.=$ausgabe; + $ausgabe=''; + } + } + else + { + //ROLLBACK + $anzahl_fehler_pbb++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R2\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); + } + } + else + { + //ROLLBACK + $anzahl_fehler_pa++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R3\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); + } } else { //ROLLBACK + $anzahl_fehler_le++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R4\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); } } else { //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R5\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); } } else { //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R6\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); } } else { //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R7\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); } } else { //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********".$student_uid." / ".$nachname.", ".$vorname." / ".$matrikelnr."\n"; + $text1.=$error_log; + $text1.=" R8\n"; + $text1.="***********\n\n"; + pg_query($conn, "ROLLBACK"); } } +//echo und mail +echo nl2br("Bachelorarbeitsynchro Ende: ".date("d.m.Y H:i:s")." von ".$_SERVER['HTTP_HOST']."\n\n"); + +$error_log="Sync Bachelorarbeiten\n------------\n\n".$text1; +echo nl2br("Allgemeine Fehler: ".$anzahl_fehler.".\n"); +echo nl2br("Lehreinheiten: Gesamt: ".$anzahl_le_gesamt." / Eingefügt: ".$anzahl_le_insert." / Geändert: ".$anzahl_le_update." / Fehler: ".$anzahl_fehler_le."\n"); +echo nl2br("Projektarbeiten: Gesamt: ".$anzahl_pa_gesamt." / Eingefügt: ".$anzahl_pa_insert." / Geändert: ".$anzahl_pa_update." / Fehler: ".$anzahl_fehler_pa."\n"); +echo nl2br("Betreuer: Gesamt: ".$anzahl_pbb_gesamt." / Eingefügt: ".$anzahl_pbb_insert." / Geändert: ".$anzahl_pbb_update." / Fehler: ".$anzahl_fehler_pbb."\n"); +echo nl2br("Begutachter: Gesamt: ".$anzahl_pbg_gesamt." / Eingefügt: ".$anzahl_pbg_insert." / Geändert: ".$anzahl_pbg_update." / Fehler: ".$anzahl_fehler_pbg."\n"); +echo nl2br($error_log."\n--------------------------------------------------------------------------------\n"); +echo nl2br($ausgabe_all); + +//mail($adress, 'SYNC-Fehler Student von '.$_SERVER['HTTP_HOST'], $error_log,"From: vilesci@technikum-wien.at"); + +/*mail($adress, 'SYNC Bachelorarbeiten von '.$_SERVER['HTTP_HOST'], "Allgemeine Fehler: ".$anzahl_fehler.".\n". +"Lehreinheiten: Gesamt: ".$anzahl_le_gesamt." / Eingefügt: ".$anzahl_le_insert." / Geändert: ".$anzahl_le_update." / Fehler: ".$anzahl_fehler_le."\n". +"Projektarbeiten: Gesamt: ".$anzahl_pa_gesamt." / Eingefügt: ".$anzahl_pa_insert." / Geändert: ".$anzahl_pa_update." / Fehler: ".$anzahl_fehler_pa."\n". +"Betreuer: Gesamt: ".$anzahl_pbb_gesamt." / Eingefügt: ".$anzahl_pbb_insert." / Geändert: ".$anzahl_pbb_update." / Fehler: ".$anzahl_fehler_pbb."\n". +"Begutachter: Gesamt: ".$anzahl_pbg_gesamt." / Eingefügt: ".$anzahl_pbg_insert." / Geändert: ".$anzahl_pbg_update." / Fehler: ".$anzahl_fehler_pbg."\n". +$ausgabe_all, "From: vilesci@technikum-wien.at");*/ } \ No newline at end of file