diff --git a/admin/sync/fas/sync_fas_portal_akadgrad.php b/admin/sync/fas/sync_fas_vilesci_akadgrad.php similarity index 100% rename from admin/sync/fas/sync_fas_portal_akadgrad.php rename to admin/sync/fas/sync_fas_vilesci_akadgrad.php diff --git a/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php b/admin/sync/fas/sync_fas_vilesci_bakkalaureatsarbeit.php similarity index 97% rename from admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php rename to admin/sync/fas/sync_fas_vilesci_bakkalaureatsarbeit.php index 11b0b08d4..864bd7ebe 100644 --- a/admin/sync/fas/sync_fas_vilescil_bakkalaureatsarbeit.php +++ b/admin/sync/fas/sync_fas_vilesci_bakkalaureatsarbeit.php @@ -20,8 +20,8 @@ require_once('../../../include/lehreinheit.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"); -$adress='ruhan@technikum-wien.at'; -//$adress='fas_sync@technikum-wien.at'; +//$adress='ruhan@technikum-wien.at'; +$adress='fas_sync@technikum-wien.at'; $error_log=''; $error_log_fas1=''; @@ -1543,4 +1543,7 @@ mail($adress, 'SYNC Bachelorarbeit von '.$_SERVER['HTTP_HOST'], $ausgabe_all,"From: vilesci@technikum-wien.at"); mail($adress, 'SYNC-Fehler Bachelorarbeiten von '.$_SERVER['HTTP_HOST'], $error_log_fas, "From: vilesci@technikum-wien.at"); -} \ No newline at end of file +} +?> + + \ No newline at end of file diff --git a/admin/sync/fas/sync_fas_portal_bankverbindung.php b/admin/sync/fas/sync_fas_vilesci_bankverbindung.php similarity index 100% rename from admin/sync/fas/sync_fas_portal_bankverbindung.php rename to admin/sync/fas/sync_fas_vilesci_bankverbindung.php diff --git a/admin/sync/fas/sync_fas_portal_Diplomarbeit.php b/admin/sync/fas/sync_fas_vilesci_diplomarbeit.php similarity index 66% rename from admin/sync/fas/sync_fas_portal_Diplomarbeit.php rename to admin/sync/fas/sync_fas_vilesci_diplomarbeit.php index 88deb6e8f..40e823774 100644 --- a/admin/sync/fas/sync_fas_portal_Diplomarbeit.php +++ b/admin/sync/fas/sync_fas_vilesci_diplomarbeit.php @@ -52,7 +52,7 @@ function validate($row) fachbereich_fk'"; + /*$qry="SELECT fachbereich_kurzbz FROM public.tbl_fachbereich WHERE ext_id='$row->fachbereich_fk'"; if($result2 = pg_query($conn, $qry)) { if($row2=pg_fetch_object($result2)) @@ -232,11 +230,10 @@ if($result = pg_query($conn_fas, $qry)) $error=true; $error_log.="Fachbereich mit ext_id='".$row->fachbereich_fk."' nicht gefunden.\n"; } - } + }*/ if(!$error) { - //echo nl2br("fachbereich_kurzbz='".$fachbereich_kurzbz."' AND semester='".$semester."' AND studiengang_kz='".$studiengang_kz."';"); - $qry="SELECT lehrfach_id FROM lehre.tbl_lehrfach WHERE fachbereich_kurzbz='".$fachbereich_kurzbz."' AND semester='".$semester."' AND studiengang_kz='".$studiengang_kz."';"; + $qry="SELECT lehrfach_id FROM lehre.tbl_lehrfach WHERE fachbereich_kurzbz='Praxissemester u' AND semester='".$semester."' AND studiengang_kz='".$studiengang_kz."';"; if($resulto = pg_query($conn, $qry)) { if($rowo=pg_fetch_object($resulto)) @@ -246,10 +243,11 @@ if($result = pg_query($conn_fas, $qry)) else { $error=true; - $error_log.="Lehrfach mit Fachbereich='".$fachbereich_kurzbz."', Semester='".$semester."' und Studiengang='".$studiengang_kz."' nicht gefunden.\n"; + $error_log.="Lehrfach mit Fachbereich='Praxissemester u', Semester='".$semester."' und Studiengang='".$studiengang_kz."' nicht gefunden.\n"; } } - $qry="SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE ext_id='$row->studiensemester_fk'"; + //Datum der DA in welchem Sem? + $qry="SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE '".$row->diplomarbeitsdatum."'> start AND '".$row->diplomarbeitsdatum."'< ende;"; if($resulto = pg_query($conn, $qry)) { if($rowo=pg_fetch_object($resulto)) @@ -259,7 +257,7 @@ if($result = pg_query($conn_fas, $qry)) else { $error=true; - $error_log.="Studiensemester mit ext_id='".$row->studiensemester_fk."' nicht gefunden.\n"; + $error_log.="Studiensemester für Diplomarbeitsdatum '".$row->diplomarbeitsdatum."' nicht gefunden!\n"; } } @@ -283,7 +281,7 @@ if($result = pg_query($conn_fas, $qry)) } if(!$error) { - $qry2="SELECT * FROM lehre.tbl_lehreinheit WHERE lehrform_kurzbz='BE' AND ext_id='".$row->bakkalaureatsarbeit_pk."';"; + $qry2="SELECT * FROM lehre.tbl_lehreinheit WHERE lehrform_kurzbz='DE' AND ext_id='".$row->bakkalaureatsarbeit_pk."';"; if($result2 = pg_query($conn, $qry2)) { if(pg_num_rows($result2)>0) //eintrag gefunden @@ -330,7 +328,6 @@ if($result = pg_query($conn_fas, $qry)) myaddslashes($lehreinheitupdatevon).', '. myaddslashes($lehreinheitext_id).', '. myaddslashes($lehreinheitsprache).');'; - $ausgabe.="Lehreinheit angelegt: Lehrveranstaltung='".$lehreinheitlehrveranstaltung_id."', Studiensemester='".$lehreinheitstudiensemester_kurzbz."' und Lehrfach='".$lehreinheitlehrfach_id."'.\n"; } else { @@ -515,7 +512,7 @@ if($result = pg_query($conn_fas, $qry)) $ausgabe_le="Insertvon: '".$lehreinheitinsertvon."' (statt '".$row2->insertvon."')"; } } - if($row2->insertamum!=$lehreinheitinsertamum) + if(date("d.m.Y", $row2->insertamum)!=date("d.m.Y", $lehreinheitinsertamum)) { $updatele=true; if(strlen(trim($ausgabe_le))>0) @@ -824,7 +821,7 @@ if($result = pg_query($conn_fas, $qry)) $ausgabe_pa="Anmerkung: '".$projektarbeitanmerkung."' (statt '".$row3->anmerkung."')"; } } - if($row3->insertamum!=$projektarbeitinsertamum) + if(date("d.m.Y", $row3->insertamum)!=date("d.m.Y", $projektarbeitinsertamum)) { $updatep=true; if(strlen(trim($ausgabe_pa))>0) @@ -908,269 +905,364 @@ if($result = pg_query($conn_fas, $qry)) $error_log.= "*****\nFehler beim Speichern des Projektarbeits-Datensatzes: ".$projektarbeitlehreinheit_id."\n ".$qry."\n"; $anzahl_fehler++; } - - - - - - - - - - - - - - - //betreuer - - $qry="Select nachname, vorname, person_id from tbl_person join tbl_benutzer using (person_id) join tbl_mitarbeiter on tbl_benutzer.uid=mitarbeiter_uid;"; - if($resultb1 = pg_query($conn_fas, $qry)) - { - while ($rowb1=pg_fetch_object($resultb1)) - { - if (strstr($rowb1->nachname, $row->erstbegutachter.' ')) - { - $person_id1=$rowb1->person_id; - } - if (strstr($rowb1->nachname, $row->zweitbegutachter.' ')) - { - $person_id2=$rowb1->person_id; - } - if (strstr($rowb1->nachname, $row->betreuer.' ')) - { - $person_idb=$rowb1->person_id; - } - } - } - if ($person_id1!='') - { - $projektbetreuer =new projektbetreuer($conn); - $projektbetreuer->person_id =$person_id1; - $projektbetreuer->projektarbeit_id =$projektarbeit->projektarbeit_id; - $projektbetreuer->note =$row->noteerstbegutachter; - $projektbetreuer->betreuerart ='g'; //g=Diplomarbeitsbegutachter - $projektbetreuer->faktor ='1,0'; - $projektbetreuer->name =''; - $projektbetreuer->punkte =$row->punkteerstbegutachter; - $projektbetreuer->stunden =''; - $projektbetreuer->stundensatz =''; - //$projektbetreuer->updateamum =$row->; - $projektbetreuer->updatevon ="SYNC"; - //$projektbetreuer->insertamum =$row->; - $projektbetreuer->insertvon ="SYNC"; - $projektbetreuer->ext_id =$row->diplomarbeit_pk; - $qry="SELECT uid FROM student WHERE student_pk=".$row->student_fk.";"; - if($resultu = pg_query($conn_fas, $qry)) - { - if($rowu=pg_fetch_object($resultu)) - { - $projektarbeit->student_uid=$rowu->uid; - $qry2="SELECT projektarbeit_id, ext_id FROM lehre.tbl_projektarbeit WHERE projekttyp_kurzbz='Diplomarbeit' AND ext_id='".$row->diplomarbeit_pk."';"; - if($result2 = pg_query($conn, $qry2)) - { - if(pg_num_rows($result2)>0) //eintrag gefunden - { - if($row2=pg_fetch_object($result2)) - { - // update, wenn datensatz bereits vorhanden - $projektarbeit->new=false; - $projektarbeit->projektarbeit_id=$row2->projektarbeit_id; + if(!$error) + { + //projektbetreuer 2x + $qry="SELECT person_fk FROM mitarbeiter WHERE mitarbeiter_pk='".$row->mitarbeiter_fk."';"; + if($resultu = pg_query($conn_fas, $qry)) + { + if($rowu=pg_fetch_object($resultu)) + { + $person=$rowu->person_fk; + } + else + { + $error=true; + $error_log.="Betreuer mit mitarbeiter_fk: ".$row->mitarbeiter_fk."' konnte in Tabelle mitarbeiter nicht gefunden werden.\n"; + } + } + $qry="SELECT person_portal FROM sync.tbl_syncperson WHERE person_fas='$person'"; //betreuer_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.="Betreuer mit person_fk: ".$person." konnte in syncperson nicht gefunden werden.\n"; + } + } + //ERSTBEGUTACHTER + $projektbetreuerprojektarbeit_id =$projektarbeitprojektarbeit_id; + $projektbetreuernote =$row->noteerstbegutachter; + $projektbetreuerbetreuerart ='Erstbegutachter'; + $projektbetreuerfaktor =$row->faktor; + $projektbetreuername =''; + $projektbetreuerpunkte =$row->punkteerstbegutachter; + $projektbetreuerstunden =""; + $projektbetreuerstundensatz =""; + //$projektbetreuerupdateamum =$row->; + $projektbetreuerupdatevon ="SYNC"; + $projektbetreuerinsertamum =$row->creationdate; + //$projektbetreuerinsertvon ="SYNC"; + $projektbetreuerext_id =$row->diplomarbeit_pk; + + $qry2="SELECT * FROM lehre.tbl_projektbetreuer WHERE projektarbeit_id='".$projektarbeitprojektarbeit_id."' AND person_id='".$projektbetreuerperson_id."' AND betreuerart_kurzbz='Betreuer';"; + 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; + $projektbetreuernew1=false; + } + else $projektbetreuernew1=true; + } + else $projektbetreuernew1=true; + } + else + { + $error=true; + $error_log.="Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: ".$row->betreuer_fk."\n"; + } + if($projektbetreuernew1) + { + $qry='INSERT INTO lehre.tbl_projektbetreuer (person_id, projektarbeit_id, betreuerart_kurzbz, faktor, name, + stunden, stundensatz, ext_id, insertamum, insertvon, updateamum, updatevon) VALUES('. + myaddslashes($projektbetreuerperson_id).', '. + myaddslashes($projektbetreuerprojektarbeit_id).', '. + myaddslashes($projektbetreuerbetreuerart).', '. + myaddslashes($projektbetreuerfaktor).', '. + myaddslashes($projektbetreuername).', '. + myaddslashes($projektbetreuerstunden).', '. + myaddslashes($projektbetreuerstundensatz).', '. + myaddslashes($projektbetreuerext_id).', '. + myaddslashes($projektbetreuerinsertamum).', '. + myaddslashes($projektbetreuerinsertvon).', now(), '. + myaddslashes($projektbetreuerupdatevon).');'; + + } + else + { + $updatep1=false; + if($row2->person_id!=$projektbetreuerperson_id) + { + $updatep1=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) + { + $updatep1=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->betreuerart_kurzbz!=$projektbetreuerbetreuerart) + { + $updatep1=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart_kurzbz."')"; + } + else + { + $ausgabe_pb="Betreuerart: '".$projektbetreuerbetreuerart."' (statt '".$row2->betreuerart_kurzbz."')"; + } + } + if($row2->faktor!=$projektbetreuerfaktor) + { + $updatep1=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) + { + $updatep1=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + else + { + $ausgabe_pb="Name: '".$projektbetreuername."' (statt '".$row2->name."')"; + } + } + if($row2->stunden!=$projektbetreuerstunden) + { + $updatep1=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) + { + $updatep1=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + else + { + $ausgabe_pb="Stundensatz: '".$projektbetreuerstundensatz."' (statt '".$row2->stundensatz."')"; + } + } + if(date("d.m.Y", $row2->insertamum)!=date("d.m.Y", $projektbetreuerinsertamum)) + { + $updatep1=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Insertamum: '".$projektbetreuerinsertamum."' (statt '".$row2->insertamum."')"; + } + else + { + $ausgabe_pb="Insertamum: '".$projektbetreuerinsertamum."' (statt '".$row2->insertamum."')"; + } + } + if($row2->insertvon!=$projektbetreuerinsertvon) + { + $updatep1=true; + if(strlen(trim($ausgabe_pb))>0) + { + $ausgabe_pb.=", Insertvon: '".$projektbetreuerinsertvon."' (statt '".$row2->insertvon."')"; + } + else + { + $ausgabe_pb="Insertvon: '".$projektbetreuerinsertvon."' (statt '".$row2->insertvon."')"; + } + } + if($updatep1) + { + $qry='UPDATE lehre.tbl_projektbetreuer SET '. + 'person_id='.myaddslashes($projektbetreuerperson_id).', '. + 'projektarbeit_id='.myaddslashes($projektbetreuerprojektarbeit_id).', '. + 'betreuerart_kurzbz='.myaddslashes($projektbetreuerbetreuerart).', '. + 'faktor='.myaddslashes($projektbetreuerfaktor).', '. + 'name='.myaddslashes($projektbetreuername).', '. + 'stunden='.myaddslashes($projektbetreuerstunden).', '. + 'stundensatz='.myaddslashes($projektbetreuerstundensatz).', '. + 'insertamum='.myaddslashes($projektbetreuerinsertamum).', '. + 'insertvon='.myaddslashes($projektbetreuerinsertvon).', '. + 'updateamum= now(), '. + 'updatevon='.myaddslashes($projektbetreuerupdatevon).' '. + "WHERE projektarbeit_id='".$projektbetreuerprojektarbeit_id."' AND person_id='".$projektbetreuerperson_id."'AND betreuerart='Begutachter';"; + + + } + } + //echo nl2br ($qry."\n"); + if(pg_query($conn,$qry)) + { + $anzahl_pbg_gesamt++; + $ausgabe_pb1=$ausgabe_pb; + $ausgabe_pb=''; + $projektbetreuerperson_id1=$projektbetreuerperson_id; + } + else + { + $error=true; + $error_log.="Fehler beim Speichern des Diplomarbeitserstbetreuer-Datensatzes:".$projektbetreuerperson_id." \n".$qry."\n"; + $ausgabe_pb=''; + } + if($error) + { + //ROLLBACK + $anzahl_fehler_pbg++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R1\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); + } + else + { + //COMMIT + if($projektbetreuernew1) + { + $anzahl_pbg_insert++; + $ausgabe.="Diplomarbeitsbetreuer eingefügt: UID='".$projektbetreuerperson_id1."' und Projektarbeit='".$projektarbeitlehreinheit_id."'.\n"; + } + else + { + if($updatep1) + { + $anzahl_pbg_update++; + $ausgabe.="Diplomarbeitsbetreuer aktualisiert: UID='".$projektbetreuerperson_id1."' und Projektarbeit='".$projektarbeitlehreinheit_id."':".$ausgabe_pb1.".\n"; + } + } + $ausgabe_pb1=''; + pg_query($conn,'COMMIT;'); + $ausgabe_all.=$ausgabe; + $ausgabe=''; + } + } + else + { + //ROLLBACK + $anzahl_fehler_pa++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R2\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } } else { - // insert, wenn datensatz noch nicht vorhanden - $projektarbeit->new=true; + //ROLLBACK + $anzahl_fehler_le++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R3\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } } - } - } - - $qry2="SELECT person_id FROM lehre.projektbetreuer WHERE projektarbeit_id='".$projektarbeit->projektarbeit_id."' AND person_id='".$projektbetreuer->person_id."';"; - if($resultu = pg_query($conn, $qry2)) - { - if(pg_num_rows($resultu)>0) //wenn dieser eintrag schon vorhanden ist - { - if($rowu=pg_fetch_object($resultu)) + else { - $projektbetreuer->person_id=$rowu->person_id; - $projektbetreuer->new=false; + //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R4\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } - else $projektbetreuer->new=true; } - else $projektbetreuer->new=true; - } - else - { - $error=true; - $error_log.='Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: '.$projektbetreuer->person_id; - } - if(!$error) - { - if(!$projektbetreuer->save()) + else { - $error_log.=$projektbetreuer->errormsg."\n"; + //ROLLBACK $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R5\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } - + } + else + { + //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R6\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } } - if ($person_id2!='') + else { - $projektbetreuer =new projektbetreuer($conn); - $projektbetreuer->person_id =$person_id2; - $projektbetreuer->projektarbeit_id =$projektarbeit->projektarbeit_id; - $projektbetreuer->note =$row->notezweitbegutachter; - $projektbetreuer->betreuerart ='g'; //d=Diplomarbeitsbegutachter - $projektbetreuer->faktor ='1,0'; - $projektbetreuer->name =''; - $projektbetreuer->punkte =$row->punktezweitbegutachter; - $projektbetreuer->stunden =''; - $projektbetreuer->stundensatz =''; - //$projektbetreuer->updateamum =$row->; - $projektbetreuer->updatevon ="SYNC"; - //$projektbetreuer->insertamum =$row->; - $projektbetreuer->insertvon ="SYNC"; - $projektbetreuer->ext_id =$row->diplomarbeit_pk; - $qry="SELECT uid FROM student WHERE student_pk=".$row->student_fk.";"; - if($resultu = pg_query($conn_fas, $qry)) - { - if($rowu=pg_fetch_object($resultu)) - { - $projektarbeit->student_uid=$rowu->uid; - $qry2="SELECT projektarbeit_id, ext_id FROM lehre.tbl_projektarbeit WHERE projekttyp_kurzbz ='Diplomarbeit' AND ext_id='".$row->diplomarbeit_pk."';"; - if($result2 = pg_query($conn, $qry2)) - { - if(pg_num_rows($result2)>0) //eintrag gefunden - { - if($row2=pg_fetch_object($result2)) - { - // update, wenn datensatz bereits vorhanden - $projektarbeit->new=false; - $projektarbeit->projektarbeit_id=$row2->projektarbeit_id; - } - } - else - { - // insert, wenn datensatz noch nicht vorhanden - $projektarbeit->new=true; - } - } - } - } - - $qry2="SELECT person_id FROM lehre.projektbetreuer WHERE projektarbeit_id='".$projektarbeit->projektarbeit_id."' AND person_id='".$projektbetreuer->person_id."';"; - if($resultu = pg_query($conn, $qry2)) - { - if(pg_num_rows($resultu)>0) //wenn dieser eintrag schon vorhanden ist - { - if($rowu=pg_fetch_object($resultu)) - { - $projektbetreuer->person_id=$rowu->person_id; - $projektbetreuer->new=false; - } - else $projektbetreuer->new=true; - } - else $projektbetreuer->new=true; - } - else - { - $error=true; - $error_log.='Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: '.$projektbetreuer->person_id; - } - if(!$error) - { - if(!$projektbetreuer->save()) - { - $error_log.=$projektbetreuer->errormsg."\n"; - $anzahl_fehler++; - } - - } - } - if ($person_idb!='') - { - $projektbetreuer =new projektbetreuer($conn); - $projektbetreuer->person_id =$person_idb; - $projektbetreuer->projektarbeit_id =$projektarbeit->projektarbeit_id; - $projektbetreuer->note =''; - $projektbetreuer->betreuerart ='d'; //d=Diplomarbeitsbetreuer - $projektbetreuer->faktor ='1,0'; - $projektbetreuer->name =''; - $projektbetreuer->punkte =''; - $projektbetreuer->stunden =$row->betreuungsstunden; - $projektbetreuer->stundensatz =$row->kosten; - //$projektbetreuer->updateamum =$row->; - $projektbetreuer->updatevon ="SYNC"; - //$projektbetreuer->insertamum =$row->; - $projektbetreuer->insertvon ="SYNC"; - $projektbetreuer->ext_id =$row->diplomarbeit_pk; - $qry="SELECT uid FROM student WHERE student_pk=".$row->student_fk.";"; - if($resultu = pg_query($conn_fas, $qry)) - { - if($rowu=pg_fetch_object($resultu)) - { - $projektarbeit->student_uid=$rowu->uid; - $qry2="SELECT projektarbeit_id, ext_id FROM lehre.tbl_projektarbeit WHERE projekttyp_kurzbz='Diplomarbeit' AND ext_id='".$row->diplomarbeit_pk."';"; - if($result2 = pg_query($conn, $qry2)) - { - if(pg_num_rows($result2)>0) //eintrag gefunden - { - if($row2=pg_fetch_object($result2)) - { - // update, wenn datensatz bereits vorhanden - $projektarbeit->new=false; - $projektarbeit->projektarbeit_id=$row2->projektarbeit_id; - } - } - else - { - // insert, wenn datensatz noch nicht vorhanden - $projektarbeit->new=true; - } - } - } - } - - $qry2="SELECT person_id FROM lehre.projektbetreuer WHERE projektarbeit_id='".$projektarbeit->projektarbeit_id."' AND person_id='".$projektbetreuer->person_id."';"; - if($resultu = pg_query($conn, $qry2)) - { - if(pg_num_rows($resultu)>0) //wenn dieser eintrag schon vorhanden ist - { - if($rowu=pg_fetch_object($resultu)) - { - $projektbetreuer->person_id=$rowu->person_id; - $projektbetreuer->new=false; - } - else $projektbetreuer->new=true; - } - else $projektbetreuer->new=true; - } - else - { - $error=true; - $error_log.='Fehler beim Zugriff auf Tabelle tbl_projektbetreuer bei betreuer_fk: '.$projektbetreuer->person_id; - } - if(!$error) - { - if(!$projektbetreuer->save()) - { - $error_log.=$projektbetreuer->errormsg."\n"; - $anzahl_fehler++; - } - - } + //ROLLBACK + $anzahl_fehler++; + $ausgabe=''; + $text1.="\n***********Diplomarbeit:".$row->diplomarbeit_pk."\n"; + $text1.=$error_log; + $text1.=" R7\n"; + $text1.="***********\n"; + pg_query($conn, "ROLLBACK"); } - flush(); - } -} + } + $error_log_fas1.=$text1; + $error_log_fas2.=$text2; + $error_log_fas3.=$text3; + $error_log_fas4.=$text4; + $error_log_fas5.=$text5; + $error_log_fas6.=$text6; + $error_log_fas7.=$text7; + $error_log_fas8.=$text8; +} +//echo und mail +echo nl2br("Diplomarbeitsynchro Ende: ".date("d.m.Y H:i:s")." von ".$_SERVER['HTTP_HOST']."\n\n"); -//echo nl2br($text); -echo nl2br($error_log); -echo nl2br("\nGesamt: $anzahl_quelle / Eingefügt: $anzahl_eingefuegt / Fehler: $anzahl_fehler"); +$error_log_fas="Sync Diplomarbeit\n------------------------\n\n".$error_log_fas1."\n".$error_log_fas2."\n".$error_log_fas3."\n".$error_log_fas4."\n".$error_log_fas5."\n".$error_log_fas6."\n".$error_log_fas7."\n".$error_log_fas8; +echo nl2br("Allgemeine Fehler: ".$anzahl_fehler.", lehrveranstaltung_fk<1: ".$anzahl_lv_fehler.", betreuer_fk oder begutachter_fk<1: ".$anzahl_betreuer_fehler.", Anzahl Bachelorarbeiten: ".$anzahl_quelle.".\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("Begutachter: Gesamt: ".$anzahl_pbg_gesamt." / Eingefügt: ".$anzahl_pbg_insert." / Geändert: ".$anzahl_pbg_update." / Fehler: ".$anzahl_fehler_pbg."\n\n"); +echo nl2br($error_log_fas."\n--------------------------------------------------------------------------------\n"); +echo nl2br($ausgabe_all); +mail($adress, 'SYNC Diplomarbeit von '.$_SERVER['HTTP_HOST'], +"Allgemeine Fehler: ".$anzahl_fehler.", lehrveranstaltung_fk<1: ".$anzahl_lv_fehler.", betreuer_fk oder begutachter_fk<1: ".$anzahl_betreuer_fehler.", Anzahl Bachelorarbeiten: ".$anzahl_quelle.".\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". +"Begutachter: Gesamt: ".$anzahl_pbg_gesamt." / Eingefügt: ".$anzahl_pbg_insert." / Geändert: ".$anzahl_pbg_update." / Fehler: ".$anzahl_fehler_pbg."\n\n". +$ausgabe_all,"From: vilesci@technikum-wien.at"); + +mail($adress, 'SYNC-Fehler Diplomarbeiten von '.$_SERVER['HTTP_HOST'], $error_log_fas, "From: vilesci@technikum-wien.at"); ?> \ No newline at end of file