diff --git a/include/vertrag.class.php b/include/vertrag.class.php
index 4ad8be725..0f1c05095 100644
--- a/include/vertrag.class.php
+++ b/include/vertrag.class.php
@@ -88,7 +88,7 @@ class vertrag extends basis_db
* @param $person_id
* @return boolean true wenn ok ,false im Fehlerfall
*/
- public function loadVertrag($person_id, $abgerechnet=null)
+ public function loadVertrag($person_id, $abgerechnet=null, $datum=null)
{
$qry = "SELECT
*,
@@ -106,6 +106,23 @@ class vertrag extends basis_db
if($abgerechnet===false)
$qry.=" AND NOT EXISTS (SELECT 1 FROM lehre.tbl_vertrag_vertragsstatus WHERE vertrag_id=tbl_vertrag.vertrag_id AND vertragsstatus_kurzbz='abgerechnet')";
+ if(!is_null($datum))
+ {
+ $qry.=" AND NOT
+ (
+ vertragstyp_kurzbz='Lehrauftrag'
+ AND EXISTS(SELECT
+ 1
+ FROM
+ lehre.tbl_lehreinheitmitarbeiter
+ JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
+ WHERE
+ vertrag_id=tbl_vertrag.vertrag_id
+ AND studiensemester_kurzbz in (SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE start>=".$this->db_add_param($datum).")
+ )
+ )";
+ }
+
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
diff --git a/rdf/studienerfolg.rdf.php b/rdf/studienerfolg.rdf.php
index 063043251..1da8ed6e7 100644
--- a/rdf/studienerfolg.rdf.php
+++ b/rdf/studienerfolg.rdf.php
@@ -48,7 +48,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
tbl_person.vorname, tbl_person.nachname,tbl_person.gebdatum,
tbl_studiensemester.bezeichnung as sembezeichnung,
tbl_studiengang.english as bezeichnung_englisch,
- tbl_studiengang.orgform_kurzbz
+ tbl_studiengang.orgform_kurzbz, tbl_person.matr_nr
FROM
public.tbl_person, public.tbl_student, public.tbl_studiengang, public.tbl_benutzer,
public.tbl_studentlehrverband, public.tbl_studiensemester
@@ -167,6 +167,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz)
$gebdatum = date('d.m.Y',strtotime($row->gebdatum));
$xml .= "
';
+ else
+ echo 'campus.tbl_beispiel: Spalte nummer von smallint auf integer geƤndert
';
+ }
+ }
+}
+
+// Index fuer prestudent und prestudentstatus
+if($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_prestudent_person'"))
+{
+ if($db->db_num_rows($result)==0)
+ {
+
+ $qry = "
+ CREATE INDEX idx_prestudent_person ON public.tbl_prestudent USING btree (person_id);
+ CREATE INDEX idx_prestudentstatus_prestudent ON public.tbl_prestudentstatus USING btree (prestudent_id);
+ ";
+
+ if(!$db->db_query($qry))
+ echo 'Indizes: '.$db->db_last_error().'
';
+ else
+ echo 'Diverse Indizes fuer Prestudent und Prestudentstatus hinzugefuegt';
+ }
+}
+
+
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '