diff --git a/include/lehreinheitmitarbeiter.class.php b/include/lehreinheitmitarbeiter.class.php
index 80cdd0c8b..90617ccfe 100644
--- a/include/lehreinheitmitarbeiter.class.php
+++ b/include/lehreinheitmitarbeiter.class.php
@@ -554,7 +554,8 @@ class lehreinheitmitarbeiter extends basis_db
$qry = '
WITH semester_sws_tbl AS (
- SELECT DISTINCT lehreinheit_id, studiensemester_kurzbz, lema.semesterstunden, stg.studiengang_kz
+ SELECT DISTINCT lehreinheit_id, studiensemester_kurzbz, lema.semesterstunden,
+ stg.studiengang_kz, stg.melde_studiengang_kz, stg.lgartcode
FROM lehre.tbl_lehreinheitmitarbeiter lema
JOIN lehre.tbl_lehreinheit USING (lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung lv USING (lehrveranstaltung_id)
@@ -577,13 +578,17 @@ class lehreinheitmitarbeiter extends basis_db
SELECT
studiengang_kz,
studiensemester_kurzbz,
+ melde_studiengang_kz,
+ lgartcode,
sum(semesterstunden) AS summe,
round(sum(semesterstunden) / 15, 2) AS sws
FROM
semester_sws_tbl
GROUP BY
studiengang_kz,
- studiensemester_kurzbz
+ studiensemester_kurzbz,
+ melde_studiengang_kz,
+ lgartcode
ORDER BY
studiengang_kz;
';
@@ -595,6 +600,8 @@ class lehreinheitmitarbeiter extends basis_db
$obj = new StdClass();
$obj->studiengang_kz = $row->studiengang_kz;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
+ $obj->melde_studiengang_kz = $row->melde_studiengang_kz;
+ $obj->lgartcode = $row->lgartcode;
$obj->sws = $row->sws;
$this->result []= $obj;
}
diff --git a/vilesci/bis/personalmeldung.php b/vilesci/bis/personalmeldung.php
index cd929c24b..69c358db6 100644
--- a/vilesci/bis/personalmeldung.php
+++ b/vilesci/bis/personalmeldung.php
@@ -875,7 +875,6 @@ function _getLehrecontainer($sws_proStg_arr)
$sws_proStg_arr = array_filter($sws_proStg_arr, function ($obj) {
return
!in_array($obj->studiengang_kz, BIS_EXCLUDE_STG) &&
- $obj->studiengang_kz > 0 &&
$obj->studiengang_kz < 10000;
});
}
@@ -886,13 +885,17 @@ function _getLehrecontainer($sws_proStg_arr)
{
$is_sommersemester = substr($sws_proStg->studiensemester_kurzbz, 0, 2) == 'SS';
$is_wintersemester = substr($sws_proStg->studiensemester_kurzbz, 0, 2) == 'WS';
+ $is_lehrgang = isset($sws_proStg->lgartcode);
+ $kennzeichen_name = $is_lehrgang ? 'LehrgangNr' : 'StgKz';
// Lehreobjekt generieren
if (empty($lehre_arr) || !lehre_stg_exists($sws_proStg->studiengang_kz, $lehre_arr))
{
$lehre_obj = new StdClass();
- $lehre_obj->StgKz = setLeadingZero(intval($sws_proStg->studiengang_kz), 4);
+ $lehre_obj->{$kennzeichen_name} = $sws_proStg->melde_studiengang_kz;
+ //~ $lehre_obj->StgKz = setLeadingZero(intval($sws_proStg->studiengang_kz), 4);
+
$lehre_obj->SommersemesterSWS = $is_sommersemester ? $sws_proStg->sws : 0.00;
$lehre_obj->WintersemesterSWS = $is_wintersemester ? $sws_proStg->sws : 0.00;
@@ -1020,7 +1023,12 @@ function _generateXML($person_arr)
foreach ($person->lehre_arr as $lehre)
{
$xml .= '