diff --git a/vilesci/lehre/lehreinheiten_vorrueckung.php b/vilesci/lehre/lehreinheiten_vorrueckung.php
index 7d48c4778..23533cd91 100644
--- a/vilesci/lehre/lehreinheiten_vorrueckung.php
+++ b/vilesci/lehre/lehreinheiten_vorrueckung.php
@@ -1,475 +1,484 @@
-
- * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
- * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
- * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
- * Manfred Kindl < manfred.kindl@technikum-wien.at >
- */
-require_once('../../config/vilesci.config.inc.php');
-require_once('../../config/global.config.inc.php');
-require_once('../../include/functions.inc.php');
-require_once('../../include/studiengang.class.php');
-require_once('../../include/studiensemester.class.php');
-require_once('../../include/lehreinheit.class.php');
-require_once('../../include/lehreinheitmitarbeiter.class.php');
-require_once('../../include/lehreinheitgruppe.class.php');
-require_once('../../include/benutzerberechtigung.class.php');
-require_once('../../include/mitarbeiter.class.php');
-require_once('../../include/gruppe.class.php');
-require_once('../../include/bisverwendung.class.php');
-
-if (!$db = new basis_db())
- die('Es konnte keine Verbindung zum Server aufgebaut werden.');
-
-$user = get_uid();
-$rechte = new benutzerberechtigung();
-$rechte->getBerechtigungen($user);
-
-if (!$rechte->isBerechtigt('lehre/vorrueckung', null, 'suid'))
- die($rechte->errormsg);
-
-$stg_obj = new studiengang();
-$stg_obj->loadArray($rechte->getStgKz('lehre/vorrueckung'),'typ, kurzbz');
-
-$stg_arr = array();
-
-foreach ($stg_obj->result as $stg)
-{
- $stg_arr[$stg->studiengang_kz] = $stg->kuerzel;
-}
-
-$studiengang_kz = (isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'');
-$semester = (isset($_GET['semester'])?$_GET['semester']:'');
-$stsem_von = (isset($_GET['stsem_von'])?$_GET['stsem_von']:'');
-$stsem_nach = (isset($_GET['stsem_nach'])?$_GET['stsem_nach']:'');
-$text = '';
-$anzahl_lehreinheiten = 0;
-$anzahl_lehreinheitmitarbeiter = 0;
-$anzahl_lehreinheitgruppe = 0;
-$error_lehreinheit = 0;
-$error_lehreinheitmitarbeiter = 0;
-$error_lehreinheitgruppe = 0;
-
-if ($stsem_von == '')
-{
- $stsem_obj = new studiensemester();
- $stsem_von = $stsem_obj->getPrevious();
-}
-
-if ($stsem_nach == '')
-{
- $stsem_obj = new studiensemester();
- $stsem_obj->getNextStudiensemester();
- $stsem_nach = $stsem_obj->studiensemester_kurzbz;
-}
-
-echo '
-
-
- Lehreinheit Vorrueckung
-
-
-
-
-Lehreinheiten Vorrückung
-';
-echo '';
-
-if ($studiengang_kz != '' && $stsem_von != '' && $stsem_nach != '')
-{
- $stg_obj = new studiengang();
- if (!$stg_obj->load($studiengang_kz))
- die('Studiengang kann nicht geladen werden');
-
- if (!$rechte->isBerechtigt('lehre/vorrueckung', $stg_obj->oe_kurzbz, 'suid'))
- die($rechte->errormsg);
-
- echo '
Starte Vorrückung '.$stg_arr[$studiengang_kz]." $semester von $stsem_von nach $stsem_nach ...";
-
- $qry = "SELECT tbl_lehreinheit.lehreinheit_id
- FROM
- lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
- WHERE
- tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
- tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_von);
- if ($semester != '')
- $qry .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
-
- if ($result = $db->db_query($qry))
- {
- $anzahl_von = $db->db_num_rows($result);
- }
- //Pruefen, ob schon eine Vorrueckung stattgefunden hat
- $qry_nach = "SELECT tbl_lehreinheit.lehreinheit_id
- FROM
- lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
- WHERE
- tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
- tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_nach);
- if ($semester != '')
- $qry_nach .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
-
- if ($result = $db->db_query($qry_nach))
- {
- $anzahl_nach = $db->db_num_rows($result);
- $baseurl = basename($_SERVER['REQUEST_URI']);
- if ($anzahl_nach >= $anzahl_von && !isset($_GET['continue']))
- {
- echo '
Es sind schon Lehreinheiten fuer das
- '.$stsem_nach.' in '.$stg_arr[$studiengang_kz].' '.$semester.' vorhanden.
- Trotzdem fortsetzen?
- ';
- die ();
- }
- }
-
- $stsem_nach_obj = new studiensemester();
- $stsem_nach_obj->load($stsem_nach);
-
- if ($result = $db->db_query($qry))
- {
- while($row = $db->db_fetch_object($result))
- {
- $text .= "
Lehreinheit $row->lehreinheit_id wird vorgerueckt";
- $le_obj = new lehreinheit();
- //Lehreinheit Neu Anlegen
- if ($le_obj->load($row->lehreinheit_id))
- {
- $le_obj->new = true;
- $le_obj->studiensemester_kurzbz = $stsem_nach;
- $le_obj->insertamum = date('Y-m-d H:i:s');
- $le_obj->insertvon = 'Vorrueckung_'.$user;
- $le_obj->ext_id = '';
- $le_obj->unr = '';
-
- if ($le_obj->save())
- {
- $anzahl_lehreinheiten++;
-
- //LehreinheitMitarbeiter Eintrag neu Anlengen
- $qry_lem = "SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter
- WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id);
-
- if ($result_lem = $db->db_query($qry_lem))
- {
- while ($row_lem = $db->db_fetch_object($result_lem))
- {
- $lem_obj = new lehreinheitmitarbeiter();
- if ($lem_obj->load($row->lehreinheit_id, $row_lem->mitarbeiter_uid))
- {
- // Pruefen ob der Lektor ueber die im Config festgelegte Stundengrenze
- // kommt und Meldung ausgeben
- $qry_stundengrenze="
- SELECT
- mitarbeiter_uid,fixangestellt,SUM(semesterstunden) AS summe, aktiv
- FROM
- lehre.tbl_lehreinheitmitarbeiter
- JOIN lehre.tbl_lehreinheit USING (lehreinheit_id)
- JOIN public.tbl_mitarbeiter USING (mitarbeiter_uid)
- JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
- WHERE
- mitarbeiter_uid=".$db->db_add_param($row_lem->mitarbeiter_uid)."
- AND studiensemester_kurzbz=".$db->db_add_param($stsem_von)."
- GROUP BY
- mitarbeiter_uid, fixangestellt, aktiv";
-
- if ($result_stundengrenze = $db->db_query($qry_stundengrenze))
- {
- if ($row_stundengrenze = $db->db_fetch_object($result_stundengrenze))
- {
- if (!$db->db_parse_bool($row_stundengrenze->fixangestellt)
- && $row_stundengrenze->summe > WARN_SEMESTERSTD_FREI)
- {
- $text .= "
- Stundengrenze ".WARN_SEMESTERSTD_FREI." Stunden ueberschritten
- von $row_lem->mitarbeiter_uid";
- }
- elseif ($db->db_parse_bool($row_stundengrenze->fixangestellt)
- && $row_stundengrenze->summe > WARN_SEMESTERSTD_FIX)
- {
- $text .= "
- Stundengrenze ".WARN_SEMESTERSTD_FIX." Stunden ueberschritten
- von $row_lem->mitarbeiter_uid";
- }
-
- // Meldung, wenn Benutzer inaktiv
- if ($db->db_parse_bool($row_stundengrenze->aktiv) == false)
- {
- $text .= "; Achtung! MitarbeiterIn
- $row_lem->mitarbeiter_uid ist nicht aktiv";
- }
- }
- }
- $lem_obj->lehreinheit_id = $le_obj->lehreinheit_id;
- $lem_obj->new = true;
- // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG definiert ist,
- // wird nicht der Stundensatz des Vorjahres verwendet
- // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG numerisch ist,
- // wird dieser Wert fuer den Stundensatz verwendet
- if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
- && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
- && is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
- {
- $lem_obj->stundensatz = VILESCI_STUNDENSATZ_VORRUECKUNG;
- }
- // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG default ist,
- //wird der Standard-Stundensatz des jeweiligen Lektors geladen und gespeichert
- elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
- && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
- && VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
- {
- $stundensatz = new mitarbeiter($row_lem->mitarbeiter_uid);
- $lem_obj->stundensatz = $stundensatz->stundensatz;
- }
- // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG nachbeschaeftigungsart ist, wird
- // bei echten Dienstvertraegen mit voller inkludierter Lehre (-1) der Stundensatz auf null gesetzt
- // bei echten Dienstvertraegen mit teilweise oder nicht inkludierter Lehre der Default Stundensatz gesetzt
- // bei sonstigen Dienstvertraegen der Default Stundensatz gesetzt
- elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
- && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
- && VILESCI_STUNDENSATZ_VORRUECKUNG == 'nachbeschaeftigungsart')
- {
- if ($lem_obj->stundensatz != '0')
- {
- $stundensatz = new mitarbeiter($row_lem->mitarbeiter_uid);
- $lem_obj->stundensatz = $stundensatz->stundensatz;
-
- $bisverwendung = new bisverwendung();
- if(!$bisverwendung->getVerwendungRange($row_lem->mitarbeiter_uid, $stsem_nach_obj->start, $stsem_nach_obj->ende))
- {
- $bisverwendung->getLastAktVerwendung($row_lem->mitarbeiter_uid);
- $bisverwendung->result[] = $bisverwendung;
- }
-
- foreach($bisverwendung->result as $row_verwendung)
- {
- // Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
- // geliefert da dies im Vertrag inkludiert ist.
- if ($row_verwendung->ba1code == 103 && $row_verwendung->inkludierte_lehre == -1)
- {
- $lem_obj->stundensatz = '';
- break;
- }
- }
- }
- }
- $lem_obj->insertamum = date('Y-m-d H:i:s');
- $lem_obj->insertvon = 'Vorrueckung_'.$user;
- $lem_obj->ext_id = '';
- $lem_obj->vertrag_id = '';
-
- if (!$lem_obj->save())
- {
- $error_lehreinheitmitarbeiter++;
- $text .= 'Fehler beim Anlegen des Lehreinheitmitarbeiter
- Eintrages: '.$lem_obj->errormsg;
- }
- else
- $anzahl_lehreinheitmitarbeiter++;
- }
- else
- {
- $text .= 'Fehler beim Laden der Mitarbeiter';
- $error_lehreinheitmitarbeiter++;
- }
- }
- }
- else
- {
- $text .= 'Fehler beim Laden der Mitarbeiter '.$db->db_last_error();
- $error_lehreinheitmitarbeiter++;
- }
-
- //LehreinheitGruppe Eintrag neu Anlegen
- $qry_leg = "
- SELECT
- lehreinheitgruppe_id
- FROM
- lehre.tbl_lehreinheitgruppe
- WHERE
- lehreinheit_id=".$db->db_add_param($row->lehreinheit_id)."
- AND NOT (tbl_lehreinheitgruppe.semester='0' AND tbl_lehreinheitgruppe.verband='I')";
-
- if ($result_leg = $db->db_query($qry_leg))
- {
- while($row_leg = $db->db_fetch_object($result_leg))
- {
- $leg_obj = new lehreinheitgruppe();
- if ($leg_obj->load($row_leg->lehreinheitgruppe_id))
- {
- // Direktinskriptionsgruppen werden nicht vorgerückt
- if ($leg_obj->gruppe_kurzbz != '')
- {
- $grp = new gruppe();
- $grp->load($leg_obj->gruppe_kurzbz);
- if ($grp->direktinskription)
- continue;
- }
-
- $leg_obj->lehreinheit_id = $le_obj->lehreinheit_id;
- $leg_obj->new = true;
- $leg_obj->insertamum = date('Y-m-d H:i:s');
- $leg_obj->insertvon = 'Vorrueckung_'.$user;
- $leg_obj->ext_id = '';
-
- if (!$leg_obj->save())
- {
- $error_lehreinheitgruppe++;
- $text .= 'Fehler beim Anlegen des Lehreinheitgruppe Eintrages: '.$leg_obj->errormsg;
- }
- else
- $anzahl_lehreinheitgruppe++;
- }
- else
- {
- $text .= 'Fehler beim Laden der Gruppe '.$leg_obj->errormsg.' '.$db->db_last_error();
- $error_lehreinheitgruppe++;
- }
- }
- }
- else
- {
- $text .= 'Fehler beim Auslesen der Gruppen';
- $error_lehreinheitgruppe++;
- }
- }
- else
- {
- $error_lehreinheit++;
- $text .= 'Fehler beim Speichern der Lehreinheit '.$le_obj->errormsg;
- }
- }
- else
- {
- $error_lehreinheit++;
- $text .= 'Fehler beim Laden der Lehreinheit '.$le_obj->errormsg;
- }
- }
- }
- else
- {
- $text .= 'Fehler beim Laden der Lehreinheiten '.$db->db_last_error();
- $error_lehreinheit++;
- }
-
- echo "
";
- echo "Vorgerueckte Lehreinheiten: $anzahl_lehreinheiten
";
- echo "Vorgerueckte LEMitarbeiter: $anzahl_lehreinheitmitarbeiter
";
- echo "Vorgerueckte LEGruppen: $anzahl_lehreinheitgruppe
";
- echo "Fehler bei Lehreinheiten: $error_lehreinheit
";
- echo "Fehler bei LEMitarbeiter: $error_lehreinheitmitarbeiter
";
- echo "Fehler bei LEGruppen: $error_lehreinheitmitarbeiter
";
-
- echo '
';
- echo $text;
- echo '
';
-}
-
-?>
-
-
+
+ * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
+ * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
+ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
+ * Manfred Kindl < manfred.kindl@technikum-wien.at >
+ */
+require_once('../../config/vilesci.config.inc.php');
+require_once('../../config/global.config.inc.php');
+require_once('../../include/functions.inc.php');
+require_once('../../include/studiengang.class.php');
+require_once('../../include/studiensemester.class.php');
+require_once('../../include/lehreinheit.class.php');
+require_once('../../include/lehreinheitmitarbeiter.class.php');
+require_once('../../include/lehreinheitgruppe.class.php');
+require_once('../../include/benutzerberechtigung.class.php');
+require_once('../../include/mitarbeiter.class.php');
+require_once('../../include/gruppe.class.php');
+require_once('../../include/bisverwendung.class.php');
+
+if (!$db = new basis_db())
+ die('Es konnte keine Verbindung zum Server aufgebaut werden.');
+
+$user = get_uid();
+$rechte = new benutzerberechtigung();
+$rechte->getBerechtigungen($user);
+
+if (!$rechte->isBerechtigt('lehre/vorrueckung', null, 'suid'))
+ die($rechte->errormsg);
+
+$stg_obj = new studiengang();
+$stg_obj->loadArray($rechte->getStgKz('lehre/vorrueckung'),'typ, kurzbz');
+
+$stg_arr = array();
+
+foreach ($stg_obj->result as $stg)
+{
+ $stg_arr[$stg->studiengang_kz] = $stg->kuerzel;
+}
+
+$studiengang_kz = (isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'');
+$semester = (isset($_GET['semester'])?$_GET['semester']:'');
+$stsem_von = (isset($_GET['stsem_von'])?$_GET['stsem_von']:'');
+$stsem_nach = (isset($_GET['stsem_nach'])?$_GET['stsem_nach']:'');
+$text = '';
+$anzahl_lehreinheiten = 0;
+$anzahl_lehreinheitmitarbeiter = 0;
+$anzahl_lehreinheitgruppe = 0;
+$error_lehreinheit = 0;
+$error_lehreinheitmitarbeiter = 0;
+$error_lehreinheitgruppe = 0;
+
+if ($stsem_von == '')
+{
+ $stsem_obj = new studiensemester();
+ $stsem_von = $stsem_obj->getPrevious();
+}
+
+if ($stsem_nach == '')
+{
+ $stsem_obj = new studiensemester();
+ $stsem_obj->getNextStudiensemester();
+ $stsem_nach = $stsem_obj->studiensemester_kurzbz;
+}
+
+echo '
+
+
+ Lehreinheit Vorrueckung
+
+
+
+
+Lehreinheiten Vorrückung
+';
+echo '';
+
+if ($studiengang_kz != '' && $stsem_von != '' && $stsem_nach != '')
+{
+ $stg_obj = new studiengang();
+ if (!$stg_obj->load($studiengang_kz))
+ die('Studiengang kann nicht geladen werden');
+
+ if (!$rechte->isBerechtigt('lehre/vorrueckung', $stg_obj->oe_kurzbz, 'suid'))
+ die($rechte->errormsg);
+
+ echo '
Starte Vorrückung '.$stg_arr[$studiengang_kz]." $semester von $stsem_von nach $stsem_nach ...";
+
+ $qry = "SELECT tbl_lehreinheit.lehreinheit_id
+ FROM
+ lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
+ WHERE
+ tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
+ tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_von);
+ if ($semester != '')
+ $qry .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
+
+ if ($result = $db->db_query($qry))
+ {
+ $anzahl_von = $db->db_num_rows($result);
+ }
+ //Pruefen, ob schon eine Vorrueckung stattgefunden hat
+ $qry_nach = "SELECT tbl_lehreinheit.lehreinheit_id
+ FROM
+ lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
+ WHERE
+ tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
+ tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_nach);
+ if ($semester != '')
+ $qry_nach .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
+
+ if ($result = $db->db_query($qry_nach))
+ {
+ $anzahl_nach = $db->db_num_rows($result);
+ $baseurl = basename($_SERVER['REQUEST_URI']);
+ if ($anzahl_nach >= $anzahl_von && !isset($_GET['continue']))
+ {
+ echo '
Es sind schon Lehreinheiten fuer das
+ '.$stsem_nach.' in '.$stg_arr[$studiengang_kz].' '.$semester.' vorhanden.
+ Trotzdem fortsetzen?
+ ';
+ die ();
+ }
+ }
+
+ $stsem_nach_obj = new studiensemester();
+ $stsem_nach_obj->load($stsem_nach);
+
+ if ($result = $db->db_query($qry))
+ {
+ while($row = $db->db_fetch_object($result))
+ {
+ $text .= "
Lehreinheit $row->lehreinheit_id wird vorgerueckt";
+ $le_obj = new lehreinheit();
+ //Lehreinheit Neu Anlegen
+ if ($le_obj->load($row->lehreinheit_id))
+ {
+ $le_obj->new = true;
+ $le_obj->studiensemester_kurzbz = $stsem_nach;
+ $le_obj->insertamum = date('Y-m-d H:i:s');
+ $le_obj->insertvon = 'Vorrueckung_'.$user;
+ $le_obj->ext_id = '';
+ $le_obj->unr = '';
+
+ if ($le_obj->save())
+ {
+ $anzahl_lehreinheiten++;
+
+ //LehreinheitMitarbeiter Eintrag neu Anlengen
+ $qry_lem = "SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter
+ WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id);
+
+ if ($result_lem = $db->db_query($qry_lem))
+ {
+ while ($row_lem = $db->db_fetch_object($result_lem))
+ {
+ $lem_obj = new lehreinheitmitarbeiter();
+ if ($lem_obj->load($row->lehreinheit_id, $row_lem->mitarbeiter_uid))
+ {
+ // Pruefen ob der Lektor ueber die im Config festgelegte Stundengrenze
+ // kommt und Meldung ausgeben
+ $qry_stundengrenze="
+ SELECT
+ mitarbeiter_uid,fixangestellt,SUM(semesterstunden) AS summe, aktiv
+ FROM
+ lehre.tbl_lehreinheitmitarbeiter
+ JOIN lehre.tbl_lehreinheit USING (lehreinheit_id)
+ JOIN public.tbl_mitarbeiter USING (mitarbeiter_uid)
+ JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
+ WHERE
+ mitarbeiter_uid=".$db->db_add_param($row_lem->mitarbeiter_uid)."
+ AND studiensemester_kurzbz=".$db->db_add_param($stsem_von)."
+ GROUP BY
+ mitarbeiter_uid, fixangestellt, aktiv";
+
+ if ($result_stundengrenze = $db->db_query($qry_stundengrenze))
+ {
+ if ($row_stundengrenze = $db->db_fetch_object($result_stundengrenze))
+ {
+ if (!$db->db_parse_bool($row_stundengrenze->fixangestellt)
+ && $row_stundengrenze->summe > WARN_SEMESTERSTD_FREI)
+ {
+ $text .= "
+ Stundengrenze ".WARN_SEMESTERSTD_FREI." Stunden ueberschritten
+ von $row_lem->mitarbeiter_uid";
+ }
+ elseif ($db->db_parse_bool($row_stundengrenze->fixangestellt)
+ && $row_stundengrenze->summe > WARN_SEMESTERSTD_FIX)
+ {
+ $text .= "
+ Stundengrenze ".WARN_SEMESTERSTD_FIX." Stunden ueberschritten
+ von $row_lem->mitarbeiter_uid";
+ }
+
+ // Meldung, wenn Benutzer inaktiv
+ if ($db->db_parse_bool($row_stundengrenze->aktiv) == false)
+ {
+ $text .= "; Achtung! MitarbeiterIn
+ $row_lem->mitarbeiter_uid ist nicht aktiv";
+ }
+ }
+ }
+ $lem_obj->lehreinheit_id = $le_obj->lehreinheit_id;
+ $lem_obj->new = true;
+ // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG definiert ist,
+ // wird nicht der Stundensatz des Vorjahres verwendet
+ // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG numerisch ist,
+ // wird dieser Wert fuer den Stundensatz verwendet
+ if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
+ && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
+ && is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
+ {
+ $lem_obj->stundensatz = VILESCI_STUNDENSATZ_VORRUECKUNG;
+ }
+ // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG default ist,
+ //wird der Standard-Stundensatz des jeweiligen Lektors geladen und gespeichert
+ elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
+ && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
+ && VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
+ {
+ $stundensatz = new mitarbeiter($row_lem->mitarbeiter_uid);
+ $lem_obj->stundensatz = $stundensatz->stundensatz;
+ }
+ // Wenn VILESCI_STUNDENSATZ_VORRUECKUNG nachbeschaeftigungsart ist, wird
+ // bei echten Dienstvertraegen mit voller inkludierter Lehre (-1) der Stundensatz auf null gesetzt
+ // bei echten Dienstvertraegen mit teilweise oder nicht inkludierter Lehre der Default Stundensatz gesetzt
+ // bei sonstigen Dienstvertraegen der Default Stundensatz gesetzt
+ elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
+ && VILESCI_STUNDENSATZ_VORRUECKUNG != ''
+ && VILESCI_STUNDENSATZ_VORRUECKUNG == 'nachbeschaeftigungsart')
+ {
+ if ($lem_obj->stundensatz != '0')
+ {
+ $stundensatz = new mitarbeiter($row_lem->mitarbeiter_uid);
+ $lem_obj->stundensatz = $stundensatz->stundensatz;
+
+ $bisverwendung = new bisverwendung();
+ if(!$bisverwendung->getVerwendungRange($row_lem->mitarbeiter_uid, $stsem_nach_obj->start, $stsem_nach_obj->ende))
+ {
+ $bisverwendung->getLastAktVerwendung($row_lem->mitarbeiter_uid);
+ $bisverwendung->result[] = $bisverwendung;
+ }
+
+ foreach($bisverwendung->result as $row_verwendung)
+ {
+ // Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz
+ // geliefert da dies im Vertrag inkludiert ist.
+ if ($row_verwendung->ba1code == 103 && $row_verwendung->inkludierte_lehre == -1)
+ {
+ $lem_obj->stundensatz = '';
+ break;
+ }
+ }
+ }
+ }
+ $lem_obj->insertamum = date('Y-m-d H:i:s');
+ $lem_obj->insertvon = 'Vorrueckung_'.$user;
+ $lem_obj->ext_id = '';
+ $lem_obj->vertrag_id = '';
+
+ if (!$lem_obj->save())
+ {
+ $error_lehreinheitmitarbeiter++;
+ $text .= 'Fehler beim Anlegen des Lehreinheitmitarbeiter
+ Eintrages: '.$lem_obj->errormsg;
+ }
+ else
+ $anzahl_lehreinheitmitarbeiter++;
+ }
+ else
+ {
+ $text .= 'Fehler beim Laden der Mitarbeiter';
+ $error_lehreinheitmitarbeiter++;
+ }
+ }
+ }
+ else
+ {
+ $text .= 'Fehler beim Laden der Mitarbeiter '.$db->db_last_error();
+ $error_lehreinheitmitarbeiter++;
+ }
+
+ //LehreinheitGruppe Eintrag neu Anlegen
+ $qry_leg = "
+ SELECT
+ lehreinheitgruppe_id
+ FROM
+ lehre.tbl_lehreinheitgruppe
+ WHERE
+ lehreinheit_id=".$db->db_add_param($row->lehreinheit_id)."
+ AND NOT (tbl_lehreinheitgruppe.semester='0' AND tbl_lehreinheitgruppe.verband='I')";
+
+ if ($result_leg = $db->db_query($qry_leg))
+ {
+ while($row_leg = $db->db_fetch_object($result_leg))
+ {
+ $leg_obj = new lehreinheitgruppe();
+ if ($leg_obj->load($row_leg->lehreinheitgruppe_id))
+ {
+ // Direktinskriptionsgruppen werden nicht vorgerückt
+ if ($leg_obj->gruppe_kurzbz != '')
+ {
+ $grp = new gruppe();
+ $grp->load($leg_obj->gruppe_kurzbz);
+ if ($grp->direktinskription)
+ continue;
+ }
+
+ $leg_obj->lehreinheit_id = $le_obj->lehreinheit_id;
+ $leg_obj->new = true;
+ $leg_obj->insertamum = date('Y-m-d H:i:s');
+ $leg_obj->insertvon = 'Vorrueckung_'.$user;
+ $leg_obj->ext_id = '';
+
+ if (!$leg_obj->save())
+ {
+ $error_lehreinheitgruppe++;
+ $text .= 'Fehler beim Anlegen des Lehreinheitgruppe Eintrages: '.$leg_obj->errormsg;
+ }
+ else
+ $anzahl_lehreinheitgruppe++;
+ }
+ else
+ {
+ $text .= 'Fehler beim Laden der Gruppe '.$leg_obj->errormsg.' '.$db->db_last_error();
+ $error_lehreinheitgruppe++;
+ }
+ }
+ }
+ else
+ {
+ $text .= 'Fehler beim Auslesen der Gruppen';
+ $error_lehreinheitgruppe++;
+ }
+ }
+ else
+ {
+ $error_lehreinheit++;
+ $text .= 'Fehler beim Speichern der Lehreinheit '.$le_obj->errormsg;
+ }
+ }
+ else
+ {
+ $error_lehreinheit++;
+ $text .= 'Fehler beim Laden der Lehreinheit '.$le_obj->errormsg;
+ }
+ }
+ }
+ else
+ {
+ $text .= 'Fehler beim Laden der Lehreinheiten '.$db->db_last_error();
+ $error_lehreinheit++;
+ }
+
+ echo "
";
+ echo "Vorgerueckte Lehreinheiten: $anzahl_lehreinheiten
";
+ echo "Vorgerueckte LEMitarbeiter: $anzahl_lehreinheitmitarbeiter
";
+ echo "Vorgerueckte LEGruppen: $anzahl_lehreinheitgruppe
";
+ echo "Fehler bei Lehreinheiten: $error_lehreinheit
";
+ echo "Fehler bei LEMitarbeiter: $error_lehreinheitmitarbeiter
";
+ echo "Fehler bei LEGruppen: $error_lehreinheitmitarbeiter
";
+
+ echo '
';
+ echo $text;
+ echo '
';
+}
+
+?>
+
+