query("TRUNCATE TABLE prog_tmp_lb_obergrenze"); $query_minjahr = $db->query("SELECT min(jahr) jahr FROM `prog_vergaberahmen` "); $row_minjahr = $query_minjahr->fetch_array(); $start = new DateTime($row_minjahr['jahr'] . '-01-01'); $query_maxjahr = $db->query("SELECT date_format(max(date_sub(weggang, INTERVAL 1 MONTH)),'%Y-%m-28') enddat_form FROM `prog_tmp_professor` "); $row_maxjahr = $query_maxjahr->fetch_array(); $ende = $row_maxjahr['enddat_form']; $end = date_create($ende, new DateTimeZone('GMT')); foreach(new DatePeriod($start, new DateInterval('P1M') , $end) as $cur) { $akt_mon = $cur->format('Y-m'); $mon = $cur->format('m'); // ab welchem Datum wird eine prozentuale erhöhung vorgenommen. Maximaler Zuschlag bis einschl. 2017 war C3 Stufe15 - W2 $result_proz = $db->query("SELECT date_format(max(startdat), '%Y-%m') proz_dat FROM `prog_grundgehalt` WHERE besoldung='C3' "); $row_proz = $result_proz->fetch_array(); if ($row_proz['proz_dat'] >= $akt_mon) { // An der Oberfläche werden Jahreswerte berechnet. Diese werden anteilig auf den Monat verteilt $result_akt_wert_c3 = $db->query("SELECT gid, betrag C3 FROM prog_grundgehalt WHERE date_format(startdat, '%Y-%m') <= '$akt_mon' AND besoldung = 'C3' AND stufe = '15' ORDER BY startdat desc LIMIT 1"); $row_akt_wert_c3 = $result_akt_wert_c3->fetch_array(); $result_akt_wert_w2 = $db->query("SELECT gid, betrag W2 FROM prog_grundgehalt WHERE date_format(startdat, '%Y-%m') <= '$akt_mon' AND besoldung = 'W2' AND stufe = '0' ORDER BY startdat desc LIMIT 1"); $row_akt_wert_w2 = $result_akt_wert_w2->fetch_array(); $max_zulage = $row_akt_wert_c3['C3']-$row_akt_wert_w2['W2']; $result_insert = $db->query("INSERT INTO prog_tmp_lb_obergrenze (gidc3, gidw2, ab_datum, w2, c3, max_zulage, art) VALUES ($row_akt_wert_c3[gid], $row_akt_wert_w2[gid],'" . $cur->format('Y-m-01') . "', '$row_akt_wert_w2[W2]', '$row_akt_wert_c3[C3]', '$max_zulage', 'B')"); $last_wert_w2 = $row_akt_wert_w2['W2']; $last_wert_c3 = $row_akt_wert_c3['C3']; } else { // 1 Jahr nach dem letzten wert soll der Wert um 2 Prozent erhöht werden für weitere 12 Monate usw. // Fiktiver Wert: Nachdem 12 Monate vergangen sind, dann +2% sowie alle 12 Monate // echo ""; if ($mon == '01') { //Erhöhung im Januar um 2 Prozent $prozent_w2 = $last_wert_w2 * $prozentsatz / 100; $last_wert_w2 = $last_wert_w2 + $prozent_w2; $prozent_c3 = $last_wert_c3 * $prozentsatz / 100; $last_wert_c3 = $last_wert_c3 + $prozent_c3; $max_zulage = $last_wert_c3 - $last_wert_w2; $result_insert = $db->query("INSERT INTO prog_tmp_lb_obergrenze (gidc3, gidw2, ab_datum, w2, c3, max_zulage, art) VALUES ($row_akt_wert_c3[gid], $row_akt_wert_w2[gid], '" . $cur->format('Y-m-01') . "', '$last_wert_w2', '$last_wert_c3', '$max_zulage', 'F')"); } else { $max_zulage = $last_wert_c3 - $last_wert_w2; $result_insert = $db->query("INSERT INTO prog_tmp_lb_obergrenze (gidc3, gidw2, ab_datum, w2, c3, max_zulage, art) VALUES ($row_akt_wert_c3[gid], $row_akt_wert_w2[gid], '" . $cur->format('Y-m-01') . "', '$last_wert_w2', '$last_wert_c3', '$max_zulage', 'F')"); } } // echo "INSERT INTO prog_tmp_lb_lz (lblzid, monat, did, wert) VALUES ($row[lblzid], '".$cur->format('Y-m-01')."', $row[did], $row[wert])
"; } } // func_LB_obergrenze(2); ?>