diff --git a/content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php b/content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php index dff657cf6..6a50145eb 100644 --- a/content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php +++ b/content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php @@ -179,7 +179,7 @@ echo ''; - + - \ No newline at end of file + diff --git a/content/mitarbeiter/mitarbeiterverwendungdialog.js.php b/content/mitarbeiter/mitarbeiterverwendungdialog.js.php index 2b3bcfafd..841f167e9 100644 --- a/content/mitarbeiter/mitarbeiterverwendungdialog.js.php +++ b/content/mitarbeiter/mitarbeiterverwendungdialog.js.php @@ -87,12 +87,12 @@ function MitarbeiterVerwendungInit(mitarbeiter_uid, bisverwendung_id) var predicateNS = "http://www.technikum-wien.at/mitarbeiter/rdf"; fixangestellt = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#fixangestellt" )); - + //neuer Datensatz wird angelegt MitarbeiterVerwendungDetailNeu='true'; //Defaultwerte - ba1code=3; //fixer Dienstvertrag + ba1code=103; //fixer Dienstvertrag ba2code=1; //unbefristet beschausmasscode=1; //Vollzeit verwendung_code=1; //Lehr- und Forschungspersonal diff --git a/rdf/beschaeftigungsart1.rdf.php b/rdf/beschaeftigungsart1.rdf.php index a18e4b26f..bacb36890 100644 --- a/rdf/beschaeftigungsart1.rdf.php +++ b/rdf/beschaeftigungsart1.rdf.php @@ -43,7 +43,7 @@ echo ' '; -$qry = "SELECT * FROM bis.tbl_beschaeftigungsart1 ORDER BY ba1code"; +$qry = "SELECT * FROM bis.tbl_beschaeftigungsart1 ORDER BY ba1kurzbz"; $db = new basis_db(); if($db->db_query($qry)) @@ -62,4 +62,4 @@ if($db->db_query($qry)) } ?> - \ No newline at end of file + diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index f100f2115..00d075dfd 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -3525,6 +3525,108 @@ if($result = $db->db_query("SELECT * FROM pg_proc WHERE proname = 'transform_ges echo '
Function transform_geschlecht hinzugefügt.'; } } + +/** + * Anpassungen fuer BIS Personalmeldung 6.8 + */ +if (!$result = @$db->db_query("SELECT ba1code_bis FROM bis.tbl_beschaeftigungsart1 LIMIT 1")) +{ + /* + Beschaeftigungsausmass Kodextabelle aktualisieren + + BA1Code alt 1 => BA1Code neu 1 + BA1Code alt 2 => BA1Code neu 2 + BA1Code alt 3 => BA1Code neu 3 (Echter DV) + BA1Code alt 4 => BA1Code neu 5 (Freier DV -> Sonstiges) + BA1Code alt 5 => BA1Code neu 4 + BA1Code alt 6 => BA1Code neu 5 (Werkvertrag -> Sonstiges) + + BA1Code ist nicht mehr der Code der gemeldet wird. + BA1code wird um 100 erhöht damit klar ist, dass es sich um einen anderen Code handelt. + */ + $qry = " + ALTER TABLE bis.tbl_beschaeftigungsart1 ADD COLUMN ba1code_bis smallint; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=1, ba1code=101 WHERE ba1code=1; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=2, ba1code=102 WHERE ba1code=2; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=3, ba1code=103 WHERE ba1code=3; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=5, ba1code=105 WHERE ba1code=4; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=4, ba1code=104 WHERE ba1code=5; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1code_bis=6, ba1code=106 WHERE ba1code=6; + "; + + /* + Für Werkvertraege wird eine eigene Beschaeftigungsart erstellt. + Die alten Eintraege für "Sonstiges (Werkvertrag)" werden auf diese neue Beschaeftigungsart umgehaengt + da diese bei uns alles Werkvertraege sind. + Fuer Studentische Hilfskraefte wird ebenfalls eine eigene Beschaeftigungsart erstellt. + Diese werden als Echter DV gemeldet aber getrennt verwaltet. + Alle Personen mit einer Funktion als Hilfskraft werden auf diese Beschaeftigungsart geaendert. + */ + $qry .= " + INSERT INTO bis.tbl_beschaeftigungsart1(ba1code, ba1bez, ba1kurzbz, ba1code_bis) VALUES(107,'Werkvertrag (Sonstiges)','Werkvertrag (Sonstiges)', 5); + INSERT INTO bis.tbl_beschaeftigungsart1(ba1code, ba1bez, ba1kurzbz, ba1code_bis) VALUES(108,'Studentische Hilfskraft (Echter DV)','Stud. Hilfskraft (Echter DV)', 3); + UPDATE bis.tbl_bisverwendung SET ba1code=107 WHERE ba1code=106; + UPDATE bis.tbl_bisverwendung SET ba1code=108 WHERE ba1code=103 AND EXISTS( + SELECT 1 FROM public.tbl_benutzerfunktion + WHERE uid=tbl_bisverwendung.mitarbeiter_uid AND funktion_kurzbz='hilfskraft' AND + ( + datum_von BETWEEN tbl_bisverwendung.beginn AND tbl_bisverwendung.ende + OR + datum_bis BETWEEN tbl_bisverwendung.beginn AND tbl_bisverwendung.ende + ) + ); + "; + + $qry .= " + UPDATE bis.tbl_beschaeftigungsart1 SET ba1bez='Dienstverhältnis zur postsekundären Bildungseinrichtung oder deren Träger' WHERE ba1code=103; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1kurzbz='Lehr- oder Ausbildungsverhältnis', ba1bez='Lehr- oder Ausbildungsverhältnis' WHERE ba1code=104; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1kurzbz='Freier Dienstvertrag (Sonstiges)', ba1bez='Sonstiges Beschäftigungsverhältnis' WHERE ba1code=105; + UPDATE bis.tbl_beschaeftigungsart1 SET ba1kurzbz='Andere Bildungseinrichtung', ba1bez='Dienstverhältnis zu einer anderen Bildungseinrichtung oder einem anderen Träger' WHERE ba1code=106; + "; + + /* + Verwendungs Kodextabelle aktualisieren + + VerwendungCode alt 1 => VerwendungsCode neu 1 + VerwendungCode alt 2 => VerwendungsCode neu 2 + VerwendungCode alt 3 => VerwendungsCode neu 3 + VerwendungCode alt 4 => VerwendungsCode neu 4 + VerwendungCode alt 5 => VerwendungsCode neu 5 + VerwendungCode alt 6 => VerwendungsCode neu 5 + VerwendungCode alt 7 => VerwendungsCode neu 5 + VerwendungCode alt 8 => VerwendungsCode neu 6 + VerwendungCode alt 9 => VerwendungsCode neu 7 + */ + + $qry .= " + UPDATE bis.tbl_bisverwendung SET verwendung_code=5 WHERE verwendung_code=6; + UPDATE bis.tbl_bisverwendung SET verwendung_code=5 WHERE verwendung_code=7; + UPDATE bis.tbl_bisverwendung SET verwendung_code=6 WHERE verwendung_code=8; + UPDATE bis.tbl_bisverwendung SET verwendung_code=7 WHERE verwendung_code=9; + + UPDATE bis.tbl_verwendung SET verwendungbez='wissenschaftliche Lehre und Forschung' WHERE verwendung_code=1; + UPDATE bis.tbl_verwendung SET verwendungbez='wissenschaftliche Mitarbeit in Lehre und Forschung' WHERE verwendung_code=2; + UPDATE bis.tbl_verwendung SET verwendungbez='professionelle Unterstützung der Studierenden in akademischen Belangen' WHERE verwendung_code=3; + UPDATE bis.tbl_verwendung SET verwendungbez='professionelle Unterstützung der Studierenden in Gesundheits- und Sozialbelangen' WHERE verwendung_code=4; + UPDATE bis.tbl_verwendung SET verwendungbez='Management' WHERE verwendung_code=5; + UPDATE bis.tbl_verwendung SET verwendungbez='Verwaltung' WHERE verwendung_code=6; + UPDATE bis.tbl_verwendung SET verwendungbez='Wartung und Betrieb' WHERE verwendung_code=7; + + DELETE FROM bis.tbl_verwendung WHERE verwendung_code=8; + DELETE FROM bis.tbl_verwendung WHERE verwendung_code=9; + "; + + $qry.=" + INSERT INTO public.tbl_funktion(funktion_kurzbz, beschreibung, aktiv, fachbereich, semester) VALUES('vertrBefugter','Vertretungsbefugte/r des Erhalters',true,false,false); + INSERT INTO public.tbl_funktion(funktion_kurzbz, beschreibung, aktiv, fachbereich, semester) VALUES('kollegium_Ltg','Leiter/in des Kollegiums',true,false,false); + INSERT INTO public.tbl_funktion(funktion_kurzbz, beschreibung, aktiv, fachbereich, semester) VALUES('kollegium_stvLtg','Stellv. Leiter/in des Kollegiums',true,false,false); + "; + + if(!$db->db_query($qry)) + echo 'bis.tbl_verwendung und bis.tbl_beschaeftigungsart: '.$db->db_last_error().'
'; + else + echo '
Verwendung und Beschaeftigungsart für BIS Version 6.8 aktualisiert.'; +} // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; @@ -3535,7 +3637,7 @@ $tabellen=array( "bis.tbl_bisio_aufenthaltfoerderung" => array("bisio_id","aufenthaltfoerderung_code"), "bis.tbl_ausbildung" => array("ausbildungcode","ausbildungbez","ausbildungbeschreibung"), "bis.tbl_berufstaetigkeit" => array("berufstaetigkeit_code","berufstaetigkeit_bez","berufstaetigkeit_kurzbz"), - "bis.tbl_beschaeftigungsart1" => array("ba1code","ba1bez","ba1kurzbz"), + "bis.tbl_beschaeftigungsart1" => array("ba1code","ba1bez","ba1kurzbz","ba1code_bis"), "bis.tbl_beschaeftigungsart2" => array("ba2code","ba2bez"), "bis.tbl_beschaeftigungsausmass" => array("beschausmasscode","beschausmassbez","min","max"), "bis.tbl_besqual" => array("besqualcode","besqualbez"), diff --git a/vilesci/bis/checkverwendung.php b/vilesci/bis/checkverwendung.php index faf0e500e..5c6917110 100644 --- a/vilesci/bis/checkverwendung.php +++ b/vilesci/bis/checkverwendung.php @@ -40,19 +40,19 @@ $rechte->getBerechtigungen($uid); if(!$rechte->isBerechtigt('mitarbeiter/stammdaten', null,'suid')) die('Sie haben keine Berechtigung für diese Seite'); -$error_log=''; -$fehler=0; +$error_log = ''; +$fehler = 0; $text = ''; -$anzahl_quelle=0; -$anzahl_eingefuegt=0; -$anzahl_update=0; -$anzahl_fehler=0; -$ausgabe=''; -$error_log_fas=''; -$update=false; -$bismeldedatum=date("Y-m-d", mktime(0, 0, 0, 9, 1, date("Y"))); -$bismeldedatumvorjahr=date("Y-m-d", mktime(0, 0, 0, 9, 1, date("Y")-1)); +$anzahl_quelle = 0; +$anzahl_eingefuegt = 0; +$anzahl_update = 0; +$anzahl_fehler = 0; +$ausgabe = ''; +$error_log_fas = ''; +$update = false; +$bismeldedatum_start = date("Y-m-d", mktime(0, 0, 0, 1, 1, date("Y")-1)); +$bismeldedatum_ende = date("Y-m-d", mktime(0, 0, 0, 12, 31, date("Y")-1)); $ba1_arr = array(); $qry = "SELECT * FROM bis.tbl_beschaeftigungsart1"; @@ -141,14 +141,14 @@ if($resultall = $db->db_query($qryall)) AND mitarbeiter_uid=".$db->db_add_param($rowall->uid)." ORDER BY beginn"; - if($result = $db->db_query($qry)) + if ($result = $db->db_query($qry)) { - $num_rows=$db->db_num_rows($result); - if($num_rows>1) + $num_rows = $db->db_num_rows($result); + if ($num_rows > 1) { - while($row=$db->db_fetch_object($result)) + while ($row = $db->db_fetch_object($result)) { - if($i==0) + if ($i == 0) { echo "
@@ -165,7 +165,7 @@ if($resultall = $db->db_query($qryall)) $row->beginn." - ".$row->ende."
"; } } - elseif($num_rows==0) + elseif ($num_rows == 0) echo "
Aktive(r) Mitarbeiter(in): ".$rowall->nachname." ".$rowall->vorname." hat ".$num_rows." aktuelle Verwendungen:
"; } @@ -188,14 +188,14 @@ $qryall = ' ) GROUP BY uid, nachname, vorname ORDER by nachname, vorname;'; -if($resultall = $db->db_query($qryall)) +if ($resultall = $db->db_query($qryall)) { - $num_rows_all=$db->db_num_rows($resultall); + $num_rows_all = $db->db_num_rows($resultall); echo "

Bei $num_rows_all aktiven Fixangestellten Mitarbeitern sind keine aktuellen Verwendungen eingetragen

"; - while($rowall=$db->db_fetch_object($resultall)) + while ($rowall = $db->db_fetch_object($resultall)) { - $i=0; - $qry=" + $i = 0; + $qry = " SELECT * FROM @@ -207,12 +207,12 @@ if($resultall = $db->db_query($qryall)) AND mitarbeiter_uid=".$db->db_add_param($rowall->uid)." ORDER by beginn"; - if($result = $db->db_query($qry)) + if ($result = $db->db_query($qry)) { $num_rows=$db->db_num_rows($result); - while($row=$db->db_fetch_object($result)) + while ($row=$db->db_fetch_object($result)) { - if($i==0) + if ($i == 0) { echo "
@@ -233,7 +233,7 @@ if($resultall = $db->db_query($qryall)) } //3 - nicht aktive mitarbeiter mitarbeiter mit aktueller verwendung -$qryall=' +$qryall = ' SELECT uid, nachname, vorname FROM @@ -246,14 +246,14 @@ $qryall=' GROUP BY uid, nachname, vorname ORDER by nachname, vorname;'; -if($resultall = $db->db_query($qryall)) +if ($resultall = $db->db_query($qryall)) { $num_rows_all=$db->db_num_rows($resultall); echo "

Bei $num_rows_all nicht aktiven Mitarbeitern sind die aktuellen Verwendungen nicht plausibel (inaktiv aber aktuelle Verwendung)

"; - while($rowall=$db->db_fetch_object($resultall)) + while ($rowall = $db->db_fetch_object($resultall)) { - $i=0; - $qry=" + $i = 0; + $qry = " SELECT * FROM @@ -263,12 +263,12 @@ if($resultall = $db->db_query($qryall)) AND mitarbeiter_uid=".$db->db_add_param($rowall->uid)." ORDER BY beginn"; - if($result = $db->db_query($qry)) + if ($result = $db->db_query($qry)) { - $num_rows=$db->db_num_rows($result); - while($row=$db->db_fetch_object($result)) + $num_rows = $db->db_num_rows($result); + while ($row = $db->db_fetch_object($result)) { - if($i==0) + if ($i == 0) { echo "
@@ -287,16 +287,17 @@ if($resultall = $db->db_query($qryall)) } } } -//4 - wenn hauptberuf=j dann sollte verwendung=1,5,6 sein - check -$qryall=" +//4 - wenn hauptberufcode gesetzt ist, muss die Verwendung 1 sein +$qryall = " SELECT uid, nachname, vorname FROM campus.vw_mitarbeiter JOIN bis.tbl_bisverwendung ON (uid=mitarbeiter_uid) WHERE - verwendung_code NOT IN ('1','5','6') + verwendung_code NOT IN ('1') AND hauptberuflich=true + AND (tbl_bisverwendung.ende>".$db->db_add_param($bismeldedatum_start)." or tbl_bisverwendung.ende is null) GROUP BY uid, nachname, vorname ORDER by nachname, vorname, uid;"; @@ -304,8 +305,7 @@ if($resultall = $db->db_query($qryall)) { $num_rows_all=$db->db_num_rows($resultall); echo "

Bei $num_rows_all Mitarbeitern sind die Eintragungen 'hauptberuflich' nicht plausibel

"; - echo "hauptberuflich=ja, aber Verwendung nicht ". - $verwendung_arr[1].", ".$verwendung_arr[5]." oder ".$verwendung_arr[6]; + echo "hauptberuflich=ja, aber Verwendung nicht ".$verwendung_arr[1]; while($rowall=$db->db_fetch_object($resultall)) { @@ -316,9 +316,10 @@ if($resultall = $db->db_query($qryall)) FROM bis.tbl_bisverwendung WHERE - verwendung_code NOT IN ('1','5','6') + verwendung_code NOT IN ('1') AND hauptberuflich=true AND mitarbeiter_uid=".$db->db_add_param($rowall->uid)." + AND (tbl_bisverwendung.ende>".$db->db_add_param($bismeldedatum_start)." or tbl_bisverwendung.ende is null) ORDER BY beginn"; if($result = $db->db_query($qry)) @@ -342,6 +343,7 @@ if($resultall = $db->db_query($qryall)) } } //5 - stimmt beschausmasscode mit vertragsstunden überein? +/* Beschaeftigungsausmass nicht mehr relevant $qryall=" SELECT uid, nachname, vorname @@ -403,6 +405,7 @@ if($resultall = $db->db_query($qryall)) } } } +*/ //6 - aktive, freie lektoren auf verwendung 1 oder 2 prüfen $qryall=" SELECT diff --git a/vilesci/bis/personal_lektorenohnelehrauftrag.php b/vilesci/bis/personal_lektorenohnelehrauftrag.php index ab75e6a90..1cc1fbe0f 100644 --- a/vilesci/bis/personal_lektorenohnelehrauftrag.php +++ b/vilesci/bis/personal_lektorenohnelehrauftrag.php @@ -219,7 +219,7 @@ if ($result = $db->db_query($qry)) echo '

Anzahl:'.$db->db_num_rows($result); echo '
Beendingungsdatum der Verwendung: - +


diff --git a/vilesci/bis/personalmeldung_uebersicht.php b/vilesci/bis/personalmeldung_uebersicht.php index c640d09d3..7f14dd4ef 100644 --- a/vilesci/bis/personalmeldung_uebersicht.php +++ b/vilesci/bis/personalmeldung_uebersicht.php @@ -42,10 +42,6 @@ echo 'Plausibilitätsprüfungen Verwendungen
Diverse Prüfungen auf inkonsistente Daten

-
  • - Funktionen generieren
    - Funktionen zu den Verwendungen generieren (SWS pro Studiengang)

    -
  • Meldung generieren
    Abschließende Plausibilitätsprüfungen durchführen und Meldung generieren