mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
This commit is contained in:
@@ -0,0 +1,368 @@
|
||||
<?php
|
||||
/* Copyright (C) 2007 Technikum-Wien
|
||||
*
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
//*
|
||||
//* Synchronisiert Personendatensaetze von FAS DB in PORTAL DB
|
||||
//*
|
||||
//*
|
||||
//* setzt voraus: sync von tbl_nation, tbl_sprache
|
||||
//* benötigt: tbl_syncperson
|
||||
|
||||
require_once('../../../vilesci/config.inc.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../sync_config.inc.php');
|
||||
|
||||
$conn=pg_connect(CONN_STRING) or die("Connection zur Portal Datenbank fehlgeschlagen");
|
||||
//$conn_vilesci=pg_connect(CONN_STRING_VILESCI) or die("Connection zur Vilesci Datenbank fehlgeschlagen");
|
||||
$conn_fas=pg_connect(CONN_STRING_FAS) or die("Connection zur FAS Datenbank fehlgeschlagen");
|
||||
|
||||
//set_time_limit(60);
|
||||
|
||||
//$adress='ruhan@technikum-wien.at';
|
||||
//$adress='fas_sync@technikum-wien.at';
|
||||
|
||||
$error_log='';
|
||||
$error_log_fas='';
|
||||
$text = '';
|
||||
$anzahl_quelle=0;
|
||||
$anzahl_eingefuegt=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_fehler=0;
|
||||
$plausi='';
|
||||
|
||||
|
||||
/*************************
|
||||
* FAS-PORTAL - Synchronisation
|
||||
*/
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - FAS -> Vilesci - Person</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
|
||||
$qry="
|
||||
SELECT
|
||||
p1.person_pk AS person1, p1.familienname AS familienname1, p1.vorname AS vorname1, p1.vornamen AS vornamen1, p1.geschlecht AS geschlecht1,
|
||||
p1.gebdat AS gebdat1, p1.gebort AS gebort1, p1.staatsbuergerschaft AS staatsbuergerschaft1, p1.familienstand AS familienstand1,
|
||||
p1.svnr AS svnr1, p1. ersatzkennzeichen AS ersatzkennzeichen1, p1.anrede AS anrede1, p1.anzahlderkinder AS anzahlderkinder1,
|
||||
p1.titel AS titel1, p1.gebnation AS gebnation1, p1.postnomentitel AS postnomentitel1, p1.uid as uid1,
|
||||
p2.person_pk AS person2, p2.familienname AS familienname2, p2.vorname AS vorname2, p2.vornamen AS vornamen2, p2.geschlecht AS geschlecht2,
|
||||
p2.gebdat AS gebdat2, p2.gebort AS gebort2, p2.staatsbuergerschaft AS staatsbuergerschaft2, p2.familienstand AS familienstand2,
|
||||
p2.svnr AS svnr2, p2. ersatzkennzeichen AS ersatzkennzeichen2, p2.anrede AS anrede2, p2.anzahlderkinder AS anzahlderkinder2,
|
||||
p2.titel AS titel2, p2.gebnation AS gebnation2, p2.postnomentitel AS postnomentitel2, p2.uid as uid2
|
||||
FROM person AS p1, person AS p2 WHERE
|
||||
((p1.svnr=p2.svnr AND p1.svnr IS NOT NULL AND p1.svnr<>'')
|
||||
OR (p1.svnr<>p2.svnr AND p1.svnr IS NOT NULL AND p1.svnr<>'' AND p1.familienname=p2.familienname AND p1.familienname IS NOT NULL AND p1.familienname!=''
|
||||
AND p1.gebdat=p2.gebdat AND p1.gebdat IS NOT NULL AND p1.gebdat>'1935-01-01' AND p1.gebdat<'2000-01-01'))
|
||||
AND (p1.person_pk < p2.person_pk)
|
||||
AND (p1.familienname<>p2.familienname OR p1.vorname<>p2.vorname OR p1.vornamen<>p2.vornamen OR p1.geschlecht<>p2.geschlecht OR p1.gebdat<>p2.gebdat OR p1.gebort<>p2.gebort OR p1.staatsbuergerschaft<> p2.staatsbuergerschaft OR p1.familienstand<>p2.familienstand OR p1.svnr<>p2.svnr OR p1.ersatzkennzeichen<>p2.ersatzkennzeichen OR p1.anrede<>p2.anrede OR p1.anzahlderkinder<>p2.anzahlderkinder OR p1.titel<>p2.titel OR p1.gebnation<>p2.gebnation OR p1.postnomentitel<> p2.postnomentitel)
|
||||
order by p1.familienname;
|
||||
";
|
||||
//AND (p1.svnr<>'0005010400' AND p2.svnr<>'0005010400')
|
||||
|
||||
$error_log_fas="Überprüfung Personendaten im FAS:\n\n";
|
||||
|
||||
|
||||
if($resultp = pg_query($conn_fas, $qry))
|
||||
{
|
||||
$error_log_fas.="Anzahl der Datensätze: ".pg_num_rows($resultp)."\n";
|
||||
echo nl2br($error_log_fas);
|
||||
while($rowp=pg_fetch_object($resultp))
|
||||
{
|
||||
$plausi='';
|
||||
if ($rowp->geschlecht1<>$rowp->geschlecht2)
|
||||
{
|
||||
$plausi="Geschlecht der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->geschlecht1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->geschlecht2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->familienname1<>$rowp->familienname2)
|
||||
{
|
||||
$plausi.="Familienname der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->familienname1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->familienname2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->vorname1<>$rowp->vorname2)
|
||||
{
|
||||
$plausi.="Vorname der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->familienname1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->vorname2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->vornamen1<>$rowp->vornamen2)
|
||||
{
|
||||
$plausi.="Vornamen der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->vornamen1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->vornamen2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->gebdat1<>$rowp->gebdat2)
|
||||
{
|
||||
$plausi.="Geburtsdatum der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->gebdat1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->gebdat2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->gebort1<>$rowp->gebort2)
|
||||
{
|
||||
$plausi.="Geburtsort der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->gebort1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->gebort2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->staatsbuergerschaft1<>$rowp->staatsbuergerschaft2)
|
||||
{
|
||||
$plausi.="Staatsbürgerschaft der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->staatsbuergerschaft1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->staatsbuergerschaft2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->familienstand1<>$rowp->familienstand2)
|
||||
{
|
||||
$plausi.="Familienstand der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->familienstand1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->familienstand2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->svnr1<>$rowp->svnr2)
|
||||
{
|
||||
$plausi.="Sozialversicherung der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->svnr1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->svnr2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->ersatzkennzeichen1<>$rowp->ersatzkennzeichen2)
|
||||
{
|
||||
$plausi.="Ersatzkennzeichen der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->ersatzkennzeichen1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->ersatzkennzeichen2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->anrede1<>$rowp->anrede2)
|
||||
{
|
||||
$plausi.="Anrede der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->anrede1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->anrede2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->anzahlderkinder1<>$rowp->anzahlderkinder2)
|
||||
{
|
||||
$plausi.="Anzahl der Kinder der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->anzahlderkinder1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->anzahlderkinder2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->titel1<>$rowp->titel2)
|
||||
{
|
||||
$plausi.="Titel der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->titel1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->titel2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->gebnation1<>$rowp->gebnation2)
|
||||
{
|
||||
$plausi.="Geburtsnation der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->gebnation1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->gebnation2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($rowp->postnomentitel1<>$rowp->postnomentitel2)
|
||||
{
|
||||
$plausi.="Postnomentitel der Person ".$rowp->familienname1." (".$rowp->uid1.", person_pk=".$rowp->person1.") ist '".$rowp->postnomentitel1."' bei ".$rowp->familienname2." (".$rowp->uid2.", person_pk=".$rowp->person2.") aber '".$rowp->postnomentitel2."'.\n";
|
||||
$error=true;
|
||||
}
|
||||
if ($error)
|
||||
{
|
||||
$plausi="*****\n".$plausi."*****\n";
|
||||
echo nl2br ($plausi);
|
||||
$error_log_fas.=$plausi;
|
||||
//ob_flush();
|
||||
//flush();
|
||||
$error=false;
|
||||
}
|
||||
}
|
||||
}
|
||||
mail($adress, 'Plausicheck von Personen von '.$_SERVER['HTTP_HOST'], $error_log_fas,"From: vilesci@technikum-wien.at");
|
||||
$error_log_fas='';
|
||||
exit;
|
||||
|
||||
$qry = "SELECT * FROM person WHERE person_pk AS person1 NOT IN (
|
||||
SELECT
|
||||
p1.person_pk AS person1, p1.familienname AS familienname1, p1.vorname AS vorname1, p1.vornamen AS vornamen1, p1.geschlecht AS geschlecht1,
|
||||
p1.gebdat AS gebdat1, p1.gebort AS gebort1, p1.staatsbuergerschaft AS staatsbuergerschaft1, p1.familienstand AS familienstand1,
|
||||
p1.svnr AS svnr1, p1. ersatzkennzeichen AS ersatzkennzeichen1, p1.anrede AS anrede1, p1.anzahlderkinder AS anzahlderkinder1,
|
||||
p1.bismelden AS bismelden1, p1.titel AS titel1, p1.uid AS uid1, p1.gebnation AS gebnation1, p1.postnomentitel AS postnomentitel1,
|
||||
p2.person_pk AS person2, p2.familienname AS familienname2, p2.vorname AS vorname2, p2.vornamen AS vornamen2, p2.geschlecht AS geschlecht2,
|
||||
p2.gebdat AS gebdat2, p2.gebort AS gebort2, p2.staatsbuergerschaft AS staatsbuergerschaft2, p2.familienstand AS familienstand2,
|
||||
p2.svnr AS svnr2, p2. ersatzkennzeichen AS ersatzkennzeichen2, p2.anrede AS anrede2, p2.anzahlderkinder AS anzahlderkinder2,
|
||||
p2.bismelden AS bismelden2, p2.titel AS titel2, p2.uid AS uid2, p2.gebnation AS gebnation2, p2.postnomentitel AS postnomentitel2
|
||||
FROM person AS p1, person AS p2 WHERE
|
||||
((p1.gebdat=p2.gebdat AND p1.familienname=p2.familienname AND p1.vorname=p2.vorname)
|
||||
OR ((p1.ersatzkennzeichen=p2.ersatzkennzeichen AND p1.ersatzkennzeichen<>'') OR (p1.svnr=p2.svnr AND p1.svnr<>'')))
|
||||
AND (p1.person_pk <> p2.person_pk)
|
||||
AND (p1.familienname<>p2.familienname OR p1.vorname<>p2.vorname OR p1.vornamen<>p2.vornamen OR p1.geschlecht<>p2.geschlecht OR p1.gebdat<>p2.gebdat OR p1.staatsbuergerschaft<> p2.staatsbuergerschaft OR p1.familienstand<>p2.familienstand OR p1.svnr<>p2.svnr OR p1.ersatzkennzeichen<>p2.ersatzkennzeichen OR p1.anrede<>p2.anrede OR p1.anzahlderkinder<>p2.anzahlderkinder OR p1.titel<>p2.titel OR p1.gebnation<>p2.gebnation OR p1.postnomentitel<> p2.postnomentitel)
|
||||
);";
|
||||
if($result = pg_query($conn_fas, $qry))
|
||||
{
|
||||
echo nl2br("Person Sync\n-------------\n");
|
||||
$anzahl_quelle=pg_num_rows($result);
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
$person=new person($conn);
|
||||
|
||||
$person->geburtsnation=$row->gebnation;
|
||||
$person->anrede=trim($row->anrede);
|
||||
$person->titelpost=trim($row->postnomentitel);
|
||||
$person->titelpre=trim($row->titel);
|
||||
$person->nachname=trim($row->familienname);
|
||||
$person->vorname=trim($row->vorname);
|
||||
$person->vornamen=trim($row->vornamen);
|
||||
$person->gebdatum=$row->gebdat;
|
||||
$person->gebort=$row->gebort;
|
||||
$person->anmerkungen=$row->bemerkung;
|
||||
$person->svnr=trim($row->svnr);
|
||||
$person->ersatzkennzeichen=trim($row->ersatzkennzeichen);
|
||||
$person->familienstand=$row->familienstand;
|
||||
$person->anzahlkinder=$row->anzahlderkinder;
|
||||
$person->staatsbuergerschaft=$row->staatsbuergerschaft;
|
||||
$person->geschlecht=strtolower($row->geschlecht);
|
||||
$person->ext_id=$row->person_pk;
|
||||
$person->aktiv=true;
|
||||
$person->updatevon='SYNC';
|
||||
$person->insertvon='SYNC';
|
||||
|
||||
|
||||
if($row->familienstand==1)
|
||||
{
|
||||
$person->familienstand='l';
|
||||
}
|
||||
elseif($row->familienstand==2)
|
||||
{
|
||||
$person->familienstand='v';
|
||||
}
|
||||
elseif($row->familienstand==3)
|
||||
{
|
||||
$person->familienstand='g';
|
||||
}
|
||||
elseif($row->familienstand==4)
|
||||
{
|
||||
$person->familienstand='w';
|
||||
}
|
||||
else
|
||||
{
|
||||
$person->familienstand=null;
|
||||
}
|
||||
if ($person->geschlecht=='')
|
||||
{
|
||||
$person->geschlecht='m';
|
||||
}
|
||||
|
||||
$error=false;
|
||||
|
||||
$qry="SELECT person_id FROM public.tbl_benutzer WHERE uid='$row->uid'";
|
||||
if($resultu = pg_query($conn, $qry))
|
||||
{
|
||||
if(pg_num_rows($resultu)>0 && $row->uid!='') //wenn dieser eintrag schon vorhanden ist
|
||||
{
|
||||
if($rowu=pg_fetch_object($resultu))
|
||||
{
|
||||
//update
|
||||
$person->person_id=$rowu->person_id;
|
||||
$person->new=false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error=true;
|
||||
$error_log.="benutzer von $row->uid konnte nicht ermittelt werden\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry="SELECT person_fas, person_portal FROM sync.tbl_syncperson WHERE person_fas='$row->person_pk'";
|
||||
if($result1 = pg_query($conn, $qry))
|
||||
{
|
||||
if(pg_num_rows($result1)>0) //wenn dieser eintrag schon vorhanden ist
|
||||
{
|
||||
if($row1=pg_fetch_object($result1))
|
||||
{
|
||||
//update
|
||||
$person->person_id=$row1->person_portal;
|
||||
$person->new=false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$error=true;
|
||||
$error_log.="person von $row->person_pk konnte nicht ermittelt werden\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//vergleich svnr und ersatzkennzeichen
|
||||
$qry="SELECT * FROM public.tbl_person
|
||||
WHERE ('$row->svnr' is not null AND '$row->svnr' <> '' AND svnr = '$row->svnr')
|
||||
OR ('$row->ersatzkennzeichen' is not null AND '$row->ersatzkennzeichen' <> '' AND ersatzkennzeichen = '$row->ersatzkennzeichen')";
|
||||
if($resultz = pg_query($conn, $qry))
|
||||
{
|
||||
if(pg_num_rows($resultz)>0) //wenn dieser eintrag schon vorhanden ist
|
||||
{
|
||||
if($rowz=pg_fetch_object($resultz))
|
||||
{
|
||||
$person->new=false;
|
||||
$person->person_id=$rowz->person_id;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$error=true;
|
||||
$error_log.="person mit svnr: $row->svnr bzw. ersatzkennzeichen: $row->ersatzkennzeichen konnte nicht ermittelt werden (".pg_num_rows($resultz).")\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//insert
|
||||
$person->new=true;
|
||||
//echo nl2br("insert von ".$row->uid.", ".$row->familienname."\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
if(!$person->save())
|
||||
{
|
||||
$error_log.=$person->errormsg."\n";
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
else
|
||||
{
|
||||
//überprüfen, ob eintrag schon vorhanden
|
||||
$qryz="SELECT person_fas FROM sync.tbl_syncperson WHERE person_fas='$row->person_pk' AND person_portal='$person->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_fas, person_portal)'.
|
||||
'VALUES ('.$row->person_pk.', '.$person->person_id.');';
|
||||
pg_query($conn, $qry);
|
||||
}
|
||||
}
|
||||
if ($person->new)
|
||||
{
|
||||
$anzahl_eingefuegt++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$anzahl_update++;
|
||||
}
|
||||
//echo "- ";
|
||||
//ob_flush();
|
||||
//flush();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$anzahl_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
echo nl2br("\nabgeschlossen\n\n");
|
||||
}
|
||||
else
|
||||
$error_log .= '\nPersonendatensaetze konnten nicht geladen werden\n';
|
||||
|
||||
|
||||
|
||||
//echo nl2br($text);
|
||||
echo nl2br("\nLog:\n".$error_log);
|
||||
echo nl2br("\n\nGesamt FAS: $anzahl_quelle / Eingefügt: $anzahl_eingefuegt / Geändert: $anzahl_update / Fehler: $anzahl_fehler");
|
||||
$error_log="Person Sync\n-------------\n\nGesamt FAS: $anzahl_quelle / Eingefügt: $anzahl_eingefuegt / Geändert: $anzahl_update / Fehler: $anzahl_fehler\n\n".$error_log;
|
||||
mail($adress, 'SYNC Personen', $error_log,"From: vilesci@technikum-wien.at");
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,230 @@
|
||||
<?php
|
||||
/* Copyright (C) 2007 Technikum-Wien
|
||||
*
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
//*
|
||||
//* Kopiert personen TAbelle von FH-DB StPoelten
|
||||
//*
|
||||
//*
|
||||
|
||||
require_once('sync_config.inc.php');
|
||||
|
||||
$conn=pg_connect(CONN_STRING)
|
||||
or die("Connection zur FH-Complete Datenbank fehlgeschlagen");
|
||||
if (!$conn_ext=mssql_connect (STPDB_SERVER, STPDB_USER, STPDB_PASSWD))
|
||||
die('Fehler beim Verbindungsaufbau!');
|
||||
mssql_select_db(STPDB_DB, $conn_ext);
|
||||
|
||||
//set_time_limit(60);
|
||||
|
||||
//$adress='ruhan@technikum-wien.at';
|
||||
//$adress='fas_sync@technikum-wien.at';
|
||||
|
||||
$error_log='';
|
||||
$error_log_fas='';
|
||||
$text = '';
|
||||
$anzahl_quelle=0;
|
||||
$anzahl_eingefuegt=0;
|
||||
$anzahl_update=0;
|
||||
$anzahl_fehler=0;
|
||||
$plausi='';
|
||||
|
||||
// Sync-Tabelle fuer Personen checken
|
||||
if (!@pg_query($conn,'SELECT * FROM sync.stp_person LIMIT 1;'))
|
||||
{
|
||||
$sql='CREATE TABLE sync.stp_person
|
||||
(
|
||||
__Person integer NOT NULL,
|
||||
_cxGeschlecht integer,
|
||||
_cxPersonTyp integer,
|
||||
boHabilitation boolean,
|
||||
boPraesenzdienst boolean,
|
||||
boAnmeldeGebuehrBez boolean,
|
||||
boDeutschSehrGut boolean,
|
||||
boPraxisVollzeit boolean,
|
||||
boMitgliedEntwicklung boolean,
|
||||
boHauptberuf boolean,
|
||||
boQualNachweis boolean,
|
||||
chGattin Varchar(256),
|
||||
boFormAlleinverdiener boolean,
|
||||
boFormAlleinerhalter boolean,
|
||||
boFormFreibetragsbescheid boolean,
|
||||
boFormPendlerpauschale boolean,
|
||||
boStdGeblockt boolean,
|
||||
boMoVMGew boolean,
|
||||
boMoNMGew boolean,
|
||||
boDiVMGew boolean,
|
||||
boDiNMGew boolean,
|
||||
boMiVMGew boolean,
|
||||
boMiNMGew boolean,
|
||||
boDoVMGew boolean,
|
||||
boDoNMGew boolean,
|
||||
boFrVMGew boolean,
|
||||
boFrNMGew boolean,
|
||||
meGewZeit text,
|
||||
chBerufstitel Varchar(256),
|
||||
chParkberechtigung Varchar(256),
|
||||
chHomepage Varchar(256),
|
||||
_cxBundesland integer,
|
||||
chStrasse Varchar(256),
|
||||
chHausNr Varchar(256),
|
||||
chPLZ Varchar(256),
|
||||
chOrt Varchar(256),
|
||||
_Staat integer,
|
||||
chAdrBemerkung Varchar(256),
|
||||
chVorwahl Varchar(256),
|
||||
chNummer Varchar(256),
|
||||
chKlappe Varchar(256),
|
||||
chTelBemerkung Varchar(256),
|
||||
chEMailAdresse Varchar(256),
|
||||
chEMailBemerkung Varchar(256),
|
||||
boEMailFHWeb boolean,
|
||||
_PersonPraxisFirma integer,
|
||||
_PersonPraxisBetreuer integer,
|
||||
daPraxisBeginnDat Timestamp,
|
||||
daPraxisEndeDat Timestamp,
|
||||
mePraxisBeschreibung text,
|
||||
inPraxisWochenStd integer,
|
||||
flPraxisEntgelt float,
|
||||
meAusbildung text,
|
||||
meBerufstaetigkeit text,
|
||||
mePublikationen text,
|
||||
chVenia Varchar(256),
|
||||
_cxBesQual integer,
|
||||
inAusmassBesch integer,
|
||||
_cxBesch1Code integer,
|
||||
_cxBesch2Code integer,
|
||||
meKinder text,
|
||||
chTitel Varchar(256),
|
||||
chVorname Varchar(256),
|
||||
chNachname Varchar(256),
|
||||
chFirma Varchar(256),
|
||||
_cxFamilienstand integer,
|
||||
daGebDat Timestamp,
|
||||
chGebOrt Varchar(256),
|
||||
chAutoKennzeichen Varchar(256),
|
||||
NIU_daParkenBis Timestamp,
|
||||
meBemerkung text,
|
||||
chKtoNr Varchar(256),
|
||||
chBankBezeichnung Varchar(256),
|
||||
chBLZ Varchar(256),
|
||||
daEintrittDat Timestamp,
|
||||
inPIN integer,
|
||||
inChipTyp integer,
|
||||
inChipSerNr integer,
|
||||
chSpindNr Varchar(256),
|
||||
chUserName Varchar(256),
|
||||
inKinder integer,
|
||||
chSVNr Varchar(256),
|
||||
chIdentifikationsDokument Varchar(256),
|
||||
chMatrikelNr Varchar(256),
|
||||
daMaturaDat Timestamp,
|
||||
_cxZugang integer,
|
||||
_cxBerufstaetigkeit integer,
|
||||
_cxStudStatus integer,
|
||||
chKalenderSemStatAend Varchar(256),
|
||||
inStudienSemester integer,
|
||||
_StgVertiefung integer,
|
||||
_StgOrgForm integer,
|
||||
chLfdNr Varchar(256),
|
||||
_cxThemenQuelle integer,
|
||||
NIU_chThema integer,
|
||||
_cxDiplomarbeitMotiv integer,
|
||||
daPruefungsDat Timestamp,
|
||||
meBeschreibung text,
|
||||
_PersonLB integer,
|
||||
_cxBeurteilungsStufeDiplArbeit integer,
|
||||
meErstbeurteilung text,
|
||||
meZweitbeurteilung text,
|
||||
daArbeitsVergabeDat Timestamp,
|
||||
_LVFachStud integer,
|
||||
_LVFachLeitung integer,
|
||||
_cxBeurteilungsStufeGesamt integer,
|
||||
_cxBeurteilungsStufeLV1 integer,
|
||||
_cxBeurteilungsStufeLV2 integer,
|
||||
daAnmeldeDat Timestamp,
|
||||
daStudienberechtPruefDat Timestamp,
|
||||
chStudienberechtPruefFach Varchar(256),
|
||||
meZusatzQualifikation text,
|
||||
daTerminAufneVerf Timestamp,
|
||||
chBemerkungTerminAufnVerf Varchar(256),
|
||||
inGrp integer,
|
||||
chGrp Varchar(256),
|
||||
daSVAnmeldeDat Timestamp,
|
||||
daSVAbmeldeDat Timestamp,
|
||||
chThema Varchar(256),
|
||||
daPruefTeil1dat Timestamp,
|
||||
_cxGebBundesland integer,
|
||||
_GebLand integer,
|
||||
_Staatsbuerger integer,
|
||||
chErsatzKZ Varchar(256),
|
||||
_cxZugangOld integer,
|
||||
_cxZugangFHMag integer,
|
||||
daZugangFHMagDat Timestamp,
|
||||
inFachbereich integer,
|
||||
_PersonLB2 integer,
|
||||
_Vorsitzender integer,
|
||||
_PrueferTech integer,
|
||||
_PrueferNichtTech integer,
|
||||
_GegenstandTech integer,
|
||||
_GegenstandNichtTech integer,
|
||||
AggStg integer,
|
||||
PersonalNr integer,
|
||||
HoechsteAusbildung integer,
|
||||
Position Varchar(256),
|
||||
Briefanrede Varchar(256),
|
||||
OriginalID integer,
|
||||
_PersonSchule integer,
|
||||
chThemaEngl Varchar(256),
|
||||
mePraxisBeschreibungEngl text,
|
||||
inPraxisStudienSemester integer,
|
||||
chPraxisKalenderSemester Varchar(256),
|
||||
chPraxisOrtEngl Varchar(256),
|
||||
chPraxisFirmaText Varchar(256),
|
||||
_cxBeurteilungsStufeKommiPruef integer,
|
||||
datenquelle integer,
|
||||
chVertiefungZusatz Varchar(256),
|
||||
constraint "pk_tbl_sync_stp_person" primary key ("__person"));';
|
||||
if (!@pg_query($conn,$sql))
|
||||
echo '<strong>sync.stp_person: '.pg_last_error($conn).' </strong><BR>';
|
||||
else
|
||||
echo 'sync.stp_person wurde angelegt!<BR>';
|
||||
}
|
||||
|
||||
/*************************
|
||||
* FAS-PORTAL - Synchronisation
|
||||
*/
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Synchro - FHDB -> FH-Complete - PreSyncPerson</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
|
||||
$qry=' SELECT TOP 1 bomitgliedentwicklung,boqualnachweis,__person,_cxberufstaetigkeit,_cxbesch1code,_cxbesch2code,_cxbesqual,_cxbundesland,_cxfamilienstand,_cxgebbundesland,_cxgeschlecht,_cxstudstatus,_cxzugang,_cxzugangfhmag,_gebland,_personpraxisbetreuer,_personpraxisfirma,_staat,_staatsbuerger,_stgorgform,_stgvertiefung,bohabilitation,bohauptberuf,briefanrede,chadrbemerkung,chbankbezeichnung,chblz,chemailadresse,chemailbemerkung,chersatzkz,chfirma,chgebort,chhausnr,chhomepage,chkalendersemstataend,chklappe,chktonr,chmatrikelnr,chnachname,chnummer,chort,chplz,chstrasse,chsvnr,chtelbemerkung,chtitel,chusername,chvorname,chvorwahl,daeintrittdat,dagebdat,damaturadat,dapraxisbeginndat,dapraxisendedat,datenquelle,dazugangfhmagdat,flpraxisentgelt,hoechsteausbildung,inausmassbesch,inkinder,inpraxiswochenstd,instudiensemester,mepraxisbeschreibung,personalnr,_cxpersontyp,_cxzugangold,_personschule,aggstg,boanmeldegebuehrbez,bodeutschsehrgut,bodinmgew,bodivmgew,bodonmgew,bodovmgew,boemailfhweb,boformalleinerhalter,boformalleinverdiener,boformfreibetragsbescheid,boformpendlerpauschale,bofrnmgew,bofrvmgew,bominmgew,bomivmgew,bomonmgew,bomovmgew,bopraesenzdienst,bopraxisvollzeit,bostdgeblockt,chautokennzeichen,chberufstitel,chgattin,chidentifikationsdokument,chparkberechtigung,chspindnr,chvenia,chvertiefungzusatz,inchipsernr,inchiptyp,infachbereich,inpin,meausbildung,mebemerkung,meberufstaetigkeit,megewzeit,mekinder,mepublikationen,niu_daparkenbis,olfoto,originalid,position,_cxbeurteilungsstufediplarbeit,_cxbeurteilungsstufegesamt,_cxbeurteilungsstufekommipruef,_cxbeurteilungsstufelv1,_cxbeurteilungsstufelv2,_cxdiplomarbeitmotiv,_cxthemenquelle,_gegenstandnichttech,_gegenstandtech,_lvfachleitung,_lvfachstud,_personlb,_personlb2,_pruefernichttech,_pruefertech,_vorsitzender,chbemerkungterminaufnverf,chgrp,chlfdnr,chpraxisfirmatext,chpraxiskalendersemester,chpraxisortengl,chstudienberechtprueffach,chthema,chthemaengl,daanmeldedat,daarbeitsvergabedat,dapruefteil1dat,dapruefungsdat,dastudienberechtpruefdat,dasvabmeldedat,dasvanmeldedat,daterminaufneverf,ingrp,inpraxisstudiensemester,mebeschreibung,meerstbeurteilung,mepraxisbeschreibungengl,mezusatzqualifikation,mezweitbeurteilung,niu_chthema
|
||||
FROM person;';
|
||||
|
||||
if($result_ext = mssql_query($conn_ext, $qry))
|
||||
{
|
||||
while($row=mssql_fetch_object($result_ext))
|
||||
{
|
||||
$qry="INSERT INTO sync.stp_person (bomitgliedentwicklung,boqualnachweis,__person,_cxberufstaetigkeit,_cxbesch1code,_cxbesch2code,_cxbesqual,_cxbundesland,_cxfamilienstand,_cxgebbundesland,_cxgeschlecht,_cxstudstatus,_cxzugang,_cxzugangfhmag,_gebland,_personpraxisbetreuer,_personpraxisfirma,_staat,_staatsbuerger,_stgorgform,_stgvertiefung,bohabilitation,bohauptberuf,briefanrede,chadrbemerkung,chbankbezeichnung,chblz,chemailadresse,chemailbemerkung,chersatzkz,chfirma,chgebort,chhausnr,chhomepage,chkalendersemstataend,chklappe,chktonr,chmatrikelnr,chnachname,chnummer,chort,chplz,chstrasse,chsvnr,chtelbemerkung,chtitel,chusername,chvorname,chvorwahl,daeintrittdat,dagebdat,damaturadat,dapraxisbeginndat,dapraxisendedat,datenquelle,dazugangfhmagdat,flpraxisentgelt,hoechsteausbildung,inausmassbesch,inkinder,inpraxiswochenstd,instudiensemester,mepraxisbeschreibung,personalnr,_cxpersontyp,_cxzugangold,_personschule,aggstg,boanmeldegebuehrbez,bodeutschsehrgut,bodinmgew,bodivmgew,bodonmgew,bodovmgew,boemailfhweb,boformalleinerhalter,boformalleinverdiener,boformfreibetragsbescheid,boformpendlerpauschale,bofrnmgew,bofrvmgew,bominmgew,bomivmgew,bomonmgew,bomovmgew,bopraesenzdienst,bopraxisvollzeit,bostdgeblockt,chautokennzeichen,chberufstitel,chgattin,chidentifikationsdokument,chparkberechtigung,chspindnr,chvenia,chvertiefungzusatz,inchipsernr,inchiptyp,infachbereich,inpin,meausbildung,mebemerkung,meberufstaetigkeit,megewzeit,mekinder,mepublikationen,niu_daparkenbis,originalid,position,_cxbeurteilungsstufediplarbeit,_cxbeurteilungsstufegesamt,_cxbeurteilungsstufekommipruef,_cxbeurteilungsstufelv1,_cxbeurteilungsstufelv2,_cxdiplomarbeitmotiv,_cxthemenquelle,_gegenstandnichttech,_gegenstandtech,_lvfachleitung,_lvfachstud,_personlb,_personlb2,_pruefernichttech,_pruefertech,_vorsitzender,chbemerkungterminaufnverf,chgrp,chlfdnr,chpraxisfirmatext,chpraxiskalendersemester,chpraxisortengl,chstudienberechtprueffach,chthema,chthemaengl,daanmeldedat,daarbeitsvergabedat,dapruefteil1dat,dapruefungsdat,dastudienberechtpruefdat,dasvabmeldedat,dasvanmeldedat,daterminaufneverf,ingrp,inpraxisstudiensemester,mebeschreibung,meerstbeurteilung,mepraxisbeschreibungengl,mezusatzqualifikation,mezweitbeurteilung,niu_chthema)
|
||||
VALUES ('$row->bomitgliedentwicklung','$row->boqualnachweis','$row->__person','$row->_cxberufstaetigkeit','$row->_cxbesch1code','$row->_cxbesch2code','$row->_cxbesqual','$row->_cxbundesland','$row->_cxfamilienstand','$row->_cxgebbundesland','$row->_cxgeschlecht','$row->_cxstudstatus','$row->_cxzugang','$row->_cxzugangfhmag','$row->_gebland','$row->_personpraxisbetreuer','$row->_personpraxisfirma','$row->_staat','$row->_staatsbuerger','$row->_stgorgform','$row->_stgvertiefung','$row->bohabilitation','$row->bohauptberuf','$row->briefanrede','$row->chadrbemerkung','$row->chbankbezeichnung','$row->chblz','$row->chemailadresse','$row->chemailbemerkung','$row->chersatzkz','$row->chfirma','$row->chgebort','$row->chhausnr','$row->chhomepage','$row->chkalendersemstataend','$row->chklappe','$row->chktonr','$row->chmatrikelnr','$row->chnachname','$row->chnummer','$row->chort','$row->chplz','$row->chstrasse','$row->chsvnr','$row->chtelbemerkung','$row->chtitel','$row->chusername','$row->chvorname','$row->chvorwahl','$row->daeintrittdat','$row->dagebdat','$row->damaturadat','$row->dapraxisbeginndat','$row->dapraxisendedat','$row->datenquelle','$row->dazugangfhmagdat','$row->flpraxisentgelt','$row->hoechsteausbildung','$row->inausmassbesch','$row->inkinder','$row->inpraxiswochenstd','$row->instudiensemester','$row->mepraxisbeschreibung','$row->personalnr','$row->_cxpersontyp','$row->_cxzugangold','$row->_personschule','$row->aggstg','$row->boanmeldegebuehrbez','$row->bodeutschsehrgut','$row->bodinmgew','$row->bodivmgew','$row->bodonmgew','$row->bodovmgew','$row->boemailfhweb','$row->boformalleinerhalter','$row->boformalleinverdiener','$row->boformfreibetragsbescheid','$row->boformpendlerpauschale','$row->bofrnmgew','$row->bofrvmgew','$row->bominmgew','$row->bomivmgew','$row->bomonmgew','$row->bomovmgew','$row->bopraesenzdienst','$row->bopraxisvollzeit','$row->bostdgeblockt','$row->chautokennzeichen','$row->chberufstitel','$row->chgattin','$row->chidentifikationsdokument','$row->chparkberechtigung','$row->chspindnr','$row->chvenia','$row->chvertiefungzusatz','$row->inchipsernr','$row->inchiptyp','$row->infachbereich','$row->inpin','$row->meausbildung','$row->mebemerkung','$row->meberufstaetigkeit','$row->megewzeit','$row->mekinder','$row->mepublikationen','$row->niu_daparkenbis','$row->originalid','$row->position','$row->_cxbeurteilungsstufediplarbeit','$row->_cxbeurteilungsstufegesamt','$row->_cxbeurteilungsstufekommipruef','$row->_cxbeurteilungsstufelv1','$row->_cxbeurteilungsstufelv2','$row->_cxdiplomarbeitmotiv','$row->_cxthemenquelle','$row->_gegenstandnichttech','$row->_gegenstandtech','$row->_lvfachleitung','$row->_lvfachstud','$row->_personlb','$row->_personlb2','$row->_pruefernichttech','$row->_pruefertech','$row->_vorsitzender','$row->chbemerkungterminaufnverf','$row->chgrp','$row->chlfdnr','$row->chpraxisfirmatext','$row->chpraxiskalendersemester','$row->chpraxisortengl','$row->chstudienberechtprueffach','$row->chthema','$row->chthemaengl','$row->daanmeldedat','$row->daarbeitsvergabedat','$row->dapruefteil1dat','$row->dapruefungsdat','$row->dastudienberechtpruefdat','$row->dasvabmeldedat','$row->dasvanmeldedat','$row->daterminaufneverf','$row->ingrp','$row->inpraxisstudiensemester','$row->mebeschreibung','$row->meerstbeurteilung','$row->mepraxisbeschreibungengl','$row->mezusatzqualifikation','$row->mezweitbeurteilung','$row->niu_chthema')";
|
||||
if(!$result = pg_query($conn, $qry))
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user