diff --git a/system/sync/stp/sync_stp_vilesci_person.php b/system/sync/stp/sync_stp_vilesci_person.php
index c16867542..cbae2c44e 100644
--- a/system/sync/stp/sync_stp_vilesci_person.php
+++ b/system/sync/stp/sync_stp_vilesci_person.php
@@ -49,6 +49,7 @@ $error_log='';
$error_log_ext='';
$ausgabe="";
$text = '';
+$error = '';
$anzahl_quelle=0;
$anzahl_eingefuegt=0;
$anzahl_update=0;
@@ -101,6 +102,7 @@ if($result = pg_query($conn, $qry))
if (pg_num_rows($result_dubel)==0)
{
//Neue Person anlegen
+ pg_query($conn, "BEGIN");
$sql="INSERT INTO public.tbl_person
(staatsbuergerschaft,geburtsnation,sprache,anrede,titelpost,titelpre,nachname,vorname,
vornamen,gebdatum,gebort,gebzeit,foto,anmerkung,homepage,svnr,ersatzkennzeichen,
@@ -127,17 +129,58 @@ if($result = pg_query($conn, $qry))
myaddslashes($row->_cxfamilienstand).", ".
myaddslashes($row->_cxgeschlecht).", ".
myaddslashes($row->inkinder).", ".
- "TRUE, now(), 'sync', now(), 'sync', NULL);";
+ "TRUE, now(), 'sync', now(), 'sync', ".
+ myaddslashes($row->__person).");";
if(!$result_neu = pg_query($conn, $sql))
+ {
$error_log.= $sql."\n".pg_last_error($conn)." \n";
+ pg_query($conn, "ROLLBACK");
+ }
else
- $ausgabe.="\n------------------\nÜbertragen: ".$row->chtitel." ".$row->chnachname.", ".$row->chvorname;
+ {
+ //Eintrag Synctabelle
+ $qry_seq = "SELECT currval('public.tbl_person_person_id_seq') AS id;";
+ if($row_seq=pg_fetch_object(pg_query($conn,$qry_seq)))
+ {
+ $person_id=$row_seq->id;
+ }
+ else
+ {
+ $error=true;
+ $error_log.='Person-Sequence konnte nicht ausgelesen werden\n';
+ }
+ if(!$error)
+ {
+ $qryz="SELECT * FROM sync.tbl_syncperson WHERE __person='$row->__person' AND person_id='$person_id'";
+ if($resultz = pg_query($conn, $qryz))
+ {
+ if(pg_num_rows($resultz)==0) //wenn dieser eintrag noch nicht vorhanden ist
+ {
+ $qry='INSERT INTO sync.tbl_syncperson (__person, person_id)'.
+ 'VALUES ('.$row->__person.', '.$person_id.');';
+ $resulti = pg_query($conn, $qry);
+ }
+ $ausgabe.="\n------------------\nÜbertragen: ".$row->chtitel." ".$row->chnachname.", ".$row->chvorname;
+ pg_query($conn, "COMMIT");
+ }
+ else
+ {
+ $error_log.= $sql."\n".pg_last_error($conn)." \n";
+ pg_query($conn, "ROLLBACK");
+ }
+ }
+ else
+ {
+ pg_query($conn, "ROLLBACK");
+ }
+
+ }
}
}
}
}
}
-
+echo "
";
echo nl2br($error_log);
echo nl2br($ausgabe);