diff --git a/content/mitarbeiter/lehrtaetigkeit.pdf.php b/content/mitarbeiter/lehrtaetigkeit.pdf.php
index 9118d3f60..911df1a9b 100644
--- a/content/mitarbeiter/lehrtaetigkeit.pdf.php
+++ b/content/mitarbeiter/lehrtaetigkeit.pdf.php
@@ -122,8 +122,7 @@ foreach ($project_arr as $project)
// * get studiensemester
$pa = new Projektarbeit($pa_id);
- $le = new Lehreinheit($pa->lehreinheit_id);
- $studiensemester_kurzbz = $le->studiensemester_kurzbz;
+ $studiensemester_kurzbz = $pa->studiensemester_kurzbz;
// * get begin- and end date of studiensemester
$ss = new Studiensemester($studiensemester_kurzbz);
diff --git a/rdf/ktu_abschlusszeugnis.rdf.php b/rdf/ktu_abschlusszeugnis.rdf.php
index c09b945a0..a6c84f867 100644
--- a/rdf/ktu_abschlusszeugnis.rdf.php
+++ b/rdf/ktu_abschlusszeugnis.rdf.php
@@ -95,8 +95,7 @@ echo "".$note->bezeichnung."";
if(!empty($projektarbeit->result))
{
- $lehreinheit = new lehreinheit($projektarbeit->result[0]->lehreinheit_id);
- $lehrveranstaltung = new lehrveranstaltung($lehreinheit->lehrveranstaltung_id);
+ $lehrveranstaltung = new lehrveranstaltung($projektarbeit->result[0]->lehrveranstaltung_id);
$note = new note($projektarbeit->result[0]->note);
echo "".$projektarbeit->result[0]->titel."";
echo "".$note->bezeichnung."";
diff --git a/rdf/lehrauftrag_annehmen.xml.php b/rdf/lehrauftrag_annehmen.xml.php
index d5c850d49..4454707f6 100644
--- a/rdf/lehrauftrag_annehmen.xml.php
+++ b/rdf/lehrauftrag_annehmen.xml.php
@@ -131,7 +131,8 @@ if ($uid == null)
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
student_uid=vw_student.uid AND
tbl_benutzer.uid = tbl_mitarbeiter.mitarbeiter_uid AND
- tbl_lehreinheit.lehreinheit_id=tbl_projektarbeit.lehreinheit_id AND
+ tbl_lehreinheit.lehrveranstaltung_id=tbl_projektarbeit.lehrveranstaltung_id AND
+ tbl_lehreinheit.studiensemester_kurzbz=tbl_projektarbeit.studiensemester_kurzbz AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($ss)." AND
tbl_lehreinheit.lehrveranstaltung_id = tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz, FHC_INTEGER)." AND
@@ -428,8 +429,8 @@ function drawLehrauftrag($uid)
vertragsstatus_kurzbz
FROM lehre.tbl_projektbetreuer pb
JOIN lehre.tbl_projektarbeit pa USING (projektarbeit_id)
- JOIN lehre.tbl_lehreinheit le USING (lehreinheit_id)
- JOIN lehre.tbl_lehrveranstaltung lv USING (lehrveranstaltung_id)
+ JOIN lehre.tbl_lehreinheit ON(pa.lehrveranstaltung_id = lehre.tbl_lehreinheit.lehrveranstaltung_id AND pa.studiensemester_kurzbz = lehre.tbl_lehreinheit.studiensemester_kurzbz)
+ JOIN lehre.tbl_lehrveranstaltung lv ON (pa.lehrveranstaltung_id = lv.lehrveranstaltung_id)
JOIN PUBLIC.tbl_organisationseinheit oe USING (oe_kurzbz)
JOIN public.tbl_benutzer benutzer ON pb.person_id = benutzer.person_id
JOIN campus.vw_student student ON pa.student_uid = student.uid
diff --git a/rdf/sammelzeugnis.rdf.php b/rdf/sammelzeugnis.rdf.php
index 2fac133b7..2a64c0bc8 100644
--- a/rdf/sammelzeugnis.rdf.php
+++ b/rdf/sammelzeugnis.rdf.php
@@ -126,7 +126,7 @@ if(isset($_REQUEST['xmlformat']) && $_REQUEST['xmlformat']=="xml")
$qry_projektarbeit = "SELECT lehrveranstaltung_id, titel, themenbereich, note, titel_english
FROM lehre.tbl_projektarbeit
- JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
+ JOIN lehre.tbl_lehreinheit ON(lehre.tbl_projektarbeit.lehrveranstaltung_id = lehre.tbl_lehreinheit.lehrveranstaltung_id AND lehre.tbl_projektarbeit.studiensemester_kurzbz = lehre.tbl_lehreinheit.studiensemester_kurzbz)
WHERE student_uid='$uid'
AND projekttyp_kurzbz in('Bachelor', 'Diplom')
ORDER BY beginn ASC, projektarbeit_id ASC;";
diff --git a/vilesci/personen/suche.php b/vilesci/personen/suche.php
index c24688c61..664cd1063 100644
--- a/vilesci/personen/suche.php
+++ b/vilesci/personen/suche.php
@@ -715,10 +715,22 @@ function casDeleteMitarbeiter($db, $mitarbeiter_uid, $trans=true)
{
$qry = '
DELETE FROM lehre.tbl_projektbetreuer
- WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit
- WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit
- WHERE lehrveranstaltung_id IN (SELECT lehrveranstaltung_id FROM lehre.tbl_lehrveranstaltung
- WHERE koordinator='.$db->db_add_param($mitarbeiter_uid).')))';
+ WHERE projektarbeit_id IN (
+ SELECT projektarbeit_id
+ FROM lehre.tbl_projektarbeit
+ WHERE lehre.tbl_projektarbeit.lehrveranstaltung_id
+ IN (
+ SELECT lehrveranstaltung_id
+ FROM lehre.tbl_lehrveranstaltung
+ WHERE koordinator = '.$db->db_add_param($mitarbeiter_uid).'
+ )
+ AND lehre.tbl_projektarbeit.studiensemester_kurzbz
+ IN (
+ SELECT studiensemester_kurzbz
+ FROM lehre.tbl_lehrveranstaltung
+ WHERE koordinator = '.$db->db_add_param($mitarbeiter_uid).')
+ )
+ )';
if(!$db->db_query($qry))
$error = true;
}
@@ -974,7 +986,14 @@ function casDeletePrestudent($db, $prestudent_id, $trans=true)
{
$qry = '
DELETE FROM lehre.tbl_projektbetreuer
- WHERE projektarbeit_id IN (SELECT projektarbeit_id FROM lehre.tbl_projektarbeit WHERE student_uid IN (SELECT student_uid FROM tbl_student WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).'))';
+ WHERE projektarbeit_id IN (
+ SELECT projektarbeit_id
+ FROM lehre.tbl_projektarbeit
+ WHERE student_uid IN
+ (
+ SELECT student_uid
+ FROM tbl_student
+ WHERE prestudent_id='.$db->db_add_param($prestudent_id, FHC_INTEGER).'))';
if(!$db->db_query($qry))
$error = true;
}