query("SELECT date_format(monat,'%Y') jahr ,round(sum(vergaberahmen_vj),2) vergaberahmen_vj ,round(sum(jahresrahmen),2) jahresrahmen ,round(sum(besausgaben),2) besausgaben ,round(sum(vergaberahmen),2) vergaberahmen ,round(sum(verg_uebertragvj),2) verg_uebertragvj ,round(sum(leistungsbez),2) leistungsbez ,round(sum(vergaberahmen_nj),2) vergaberahmen_nj FROM `prog_tmp_synopse` WHERE date_format(monat,'%Y') = '$jahrgang' GROUP BY date_format(monat,'%Y') ORDER BY jahr"); $row_data1 = $result_data1->fetch_array(); $ju_vergaberahmen_vj = number_format($row_data1['vergaberahmen_vj'], 2, ',', '.'); $ju_jahresrahmen = number_format($row_data1['jahresrahmen'], 2, ',', '.'); $ju_vergaberahmen = number_format($row_data1['vergaberahmen'], 2, ',', '.'); $ju_verg_uebertragvj = number_format($row_data1['verg_uebertragvj'], 2, ',', '.'); $ju_vergaberahmen_nj = number_format($row_data1['vergaberahmen_nj'], 2, ',', '.'); $result_data2 = $db->query("SELECT jahr, wert FROM `prog_tmp_besschnitt` WHERE jahr = '$jahrgang'"); $row_data2 = $result_data2->fetch_array(); $ju_bes_durchschnitt = number_format($row_data2['wert'], 2, ',', '.'); // ################################################################## // #################Header######################################### $inhalt_fin = ''; $inhalt_fin.= ""; $inhalt_fin.= "
Seite [[page_cu]]/[[page_nb]]
"; $inhalt_fin.= "

Jahresübersicht $jahrgang

"; $inhalt_fin.= ""; $inhalt_fin.= ""; // VZÄ # AB Stufe 3 kann nicht sein, dass es keine erfassten VZÄ mehr gibt. Das System berechnet diese bis der letzte in Ruhestand geht #$result_vzavorh = $db->query("SELECT count(*) Anz # FROM prog_vza # WHERE ab_datum like '$jahrgang%' # ORDER BY ab_datum ASC"); #$row_vza_vorh = $result_vzavorh->fetch_array(); #if ($row_vza_vorh['Anz'] > 0) { $result_data2 = $db->query("SELECT REPLACE(TRUNCATE(sum(prozent)/12,4),'.',',') wert FROM prog_tmp_professor_synopse WHERE monat like '$jahrgang%' AND betrag != 0.00"); $row_data2 = $result_data2->fetch_array(); $inhalt_fin.= ""; #}else { # # // Dieses Jahr ist kein VZA Eintrag vorhanden # # $result_vzalast = $db->query("SELECT date_format(ab_datum, '%d.%m.%Y') ab_datum_form # , replace(round(wert,2),'.',',') wert # FROM prog_vza # WHERE date_format(ab_datum,'%Y') <= '$jahrgang' # ORDER BY ab_datum DESC # LIMIT 1"); # $row_vza_last = $result_vzalast->fetch_array(); # $ju_last_vza_dat = $row_vza_last['ab_datum_form']; # $ju_last_vza_wert = $row_vza_last['wert']; # $inhalt_fin.= " # # # # # "; #} // Besoldungsdurchschnitt $inhalt_fin.= ""; // Jahresrahmen $inhalt_fin.= ""; $inhalt_fin.= "
Zeilennr. Beschreibung Berechnung (anhand Zeilennr.) Werte
1 Übertrag Vergaberahmen aus Vorjahr $ju_vergaberahmen_vj €
2 Vollzeitäquivalente "; $query2 = "SELECT REPLACE(TRUNCATE(sum(prozent),2),'.',',') wert FROM prog_tmp_professor_synopse WHERE monat like '$jahrgang%' AND betrag != 0.00 GROUP BY date_format(monat,'%m') ORDER BY date_format(monat,'%m') ASC"; $result2 = $db->query($query2) or die("Cannot execute query2"); while ($row2 = $result2->fetch_array()) { $inhalt_fin.= ""; } $inhalt_fin.= "
Jan Feb Mär Apr Mai Jun Jul Aug Sep Okt Nov Dez Schnitt
{$row2[wert]}$row_data2[wert]
2Vollzeitäquivalente $ju_last_vza_dat$ju_last_vza_wert %
3 Besoldungsdurchschnitt $ju_bes_durchschnitt €
4 Jahresrahmen 2 x 3 $ju_jahresrahmen €
"; // Besoldungsausgaben $result_besa = $db->query("SELECT sum(betrag) wert FROM prog_tmp_professor_synopse WHERE monat like '$jahrgang%' "); $row_besa = $result_besa->fetch_array(); $result_besa_zul = $db->query("SELECT zulage FROM prog_besausg_zulage WHERE jahr = '$jahrgang' "); $row_besa_zul = $result_besa_zul->fetch_array(); $ju_besa_wert = number_format($row_besa['wert'], 2, ',', '.'); $ju_besa_zulage = number_format($row_besa_zul['zulage'], 2, ',', '.'); $summe_besa = number_format($row_besa_zul['zulage'] + $row_besa['wert'], 2, ',', '.'); $inhalt_fin.= "
"; // Zulagen $inhalt_fin.= ""; $inhalt_fin.= ""; $inhalt_fin.= "
5 Besoldungsausgaben "; $query3 = "SELECT distinct besoldung, stufe, bzid FROM `prog_tmp_professor_synopse` WHERE date_format(monat, '%Y') = '$jahrgang' ORDER BY `prog_tmp_professor_synopse`.`besoldung` ASC"; $result3 = $db->query($query3) or die("Cannot execute query3"); $zaehler = 0; while ($row3 = $result3->fetch_array()) { $result_zudesc = $db->query("SELECT beschreibung FROM prog_kat_besoldungszuweisung WHERE bzid = '$row3[bzid]' "); $row_zudesc = $result_zudesc->fetch_array(); if($row3['bzid'] == 1){ $zuweisung = ''; }else{ $zuweisung = $row_zudesc['beschreibung']; } $result_besadet = $db->query("SELECT sum(betrag) betragdetail, sum(prozent)/12 vza FROM prog_tmp_professor_synopse WHERE monat like '$jahrgang%' and besoldung = '$row3[besoldung]' and stufe = '$row3[stufe]' and bzid = $row3[bzid] "); $row_besadet = $result_besadet->fetch_array(); // Wenn einer Besoldung kein Wert zugewiesen wurde A13/Stufe 0 gibt es in der LBV-Liste nicht. // Die Profs mit Stufe 0 sind mit 0 erfasst, da sie nicht für das System relevant sind und das Ergebnis verfälschen würden if($row_besadet['betragdetail'] != 0){ if($row3['stufe'] == 0){ $stufedetail = ""; }else{ $stufedetail = $row3['stufe']; } // Hintergrundsfarbe if($zaehler == 0){ $hgfarbe = "#ffffff"; $zaehler = 1; }else{ $hgfarbe = "#d5d5d5"; $zaehler = 0; } $betragdetail = number_format($row_besadet['betragdetail'], 2, ',', '.'); $vza = number_format($row_besadet['vza'], 4, ',', '.'); $inhalt_fin.= ""; } } $inhalt_fin.= "
Besoldung Stufe VZÄ   Zuweisung Betrag
$row3[besoldung] $stufedetail $vza   $zuweisung $betragdetail €
Gesamt $ju_besa_wert €
6 Zulagen HStZulV $ju_besa_zulage €
Summe Besoldungsausgaben 5 + 6 $summe_besa €
"; // Vergaberahmen #$result_besa = $db->query("SELECT round(wert,2) wert # ,round(zulage,2) zulage # FROM prog_tmp_besausg # WHERE jahr= '$jahrgang' # LIMIT 1"); #$row_besa = $result_besa->fetch_array(); #$ju_besa_wert = number_format($row_besa['wert'], 2, ',', '.'); #$ju_besa_zulage = number_format($row_besa['zulage'], 2, ',', '.'); #$summe_besa = number_format($row_besa['zulage'] + $row_besa['wert'], 2, ',', '.'); $inhalt_fin.= "
"; $inhalt_fin.= ""; $inhalt_fin.= "
8 Vergaberahmen Jahr 4 - 7 $ju_vergaberahmen €
9 Vergaberahmen mit Übertrag 1 + 8 $ju_verg_uebertragvj €
"; // Leistungsbezüge $result_lb_bz = $db->query("SELECT round(sum(wert),2) wert FROM prog_tmp_lb_bz WHERE date_format(monat,'%Y')= '$jahrgang' LIMIT 1"); $row_lb_bz = $result_lb_bz->fetch_array(); $ju_lb_bz = number_format($row_lb_bz['wert'], 2, ',', '.'); $result_lb_lz = $db->query("SELECT round(sum(wert),2) wert FROM prog_tmp_lb_lz WHERE date_format(monat,'%Y') = '$jahrgang' LIMIT 1"); $row_lb_lz = $result_lb_lz->fetch_array(); $ju_lb_lz = number_format($row_lb_lz['wert'], 2, ',', '.'); $result_lb_einmal = $db->query("SELECT round(wert,2) wert FROM prog_tmp_lb_einmal WHERE jahr= '$jahrgang' LIMIT 1"); $row_lb_einmal = $result_lb_einmal->fetch_array(); $ju_lb_einmal = number_format($row_lb_einmal['wert'], 2, ',', '.'); $result_lb_fz = $db->query("SELECT round(sum(wert),2) wert FROM prog_tmp_lb_fz WHERE date_format(monat,'%Y') = '$jahrgang' LIMIT 1"); $row_lb_fz = $result_lb_fz->fetch_array(); $ju_lb_fz = number_format($row_lb_fz['wert'], 2, ',', '.'); $ju_lb_summe = number_format($row_data1['leistungsbez'], 2, ',', '.'); $inhalt_fin.= "
"; $inhalt_fin.= ""; $inhalt_fin.= ""; $inhalt_fin.= ""; $inhalt_fin.= ""; $inhalt_fin.= "
10 Berufungs- und Bleibeleistungsbezüge $ju_lb_bz €
11 besondere Leistungsbezüge mtl. (LBZ) $ju_lb_lz €
12 besondere Leistungsbezüge Einmalzahlungen $ju_lb_einmal €
13 Leistungsbezüge FZ $ju_lb_fz €
14 Summe der Leistungsbezüge 10+11+12+13 $ju_lb_summe €
"; // Auflistung des maximalen Leistungsbezugswert $result_maxzul = $db->query("SELECT round(sum(w2),2) w2 ,round(sum(c3),2) c3 ,round(sum(max_zulage),2) max_zulage FROM prog_tmp_lb_obergrenze WHERE date_format(ab_datum,'%Y') = '$jahrgang' LIMIT 1"); $row_maxzul = $result_maxzul->fetch_array(); $ju_maxzul_w2 = number_format($row_maxzul['w2'], 2, ',', '.'); $ju_maxzul_c3 = number_format($row_maxzul['c3'], 2, ',', '.'); $ju_maxzul_ges = number_format($row_maxzul['max_zulage'], 2, ',', '.'); # Obergrenze vor 2018 if($jahrgang < '2018' ){ $inhalt_fin.= "
"; $inhalt_fin.= ""; $inhalt_fin.= ""; $inhalt_fin.= "
15 Grundgehalt W2 $ju_maxzul_w2 €
16 Grundgehalt C3 - Stufe 15 $ju_maxzul_c3 €
17 Max. Leistungsbezüge $ju_maxzul_ges €
"; // Vergaberahmen nächstes Jahr $inhalt_fin.= "
"; $inhalt_fin.= "
18 Übertrag Vergaberahmen nächstes Jahr 1 + (8-14) $ju_vergaberahmen_nj €
"; $inhalt_fin.= "
"; } # Obergrenze nach 2018 if($jahrgang >= '2018' ){ # Ab 2018 sollen die maximalen Leistungsbezüge auf ein Fixbetrag geändert werden. Bspw. 1000€/Monat $query_maxl = $db->query("SELECT wert1*12 wert1 FROM `prog_parameter` WHERE pid =7 "); $row_maxl = $query_maxl->fetch_array(); $maxwert = number_format($row_maxl['wert1'], 2, ',', '.'); $inhalt_fin.= "
"; $inhalt_fin.= "
15 Max. Leistungsbezüge $maxwert €
"; // Vergaberahmen nächstes Jahr $inhalt_fin.= "
"; $inhalt_fin.= "
16 Übertrag Vergaberahmen nächstes Jahr 1 + (8-14) $ju_vergaberahmen_nj €
"; $inhalt_fin.= ""; } // Berechnete BZ $inhalt_fin.= ""; $inhalt_fin.= "

Berufungs- und Bleibeleistungsbezüge $jahrgang

"; $inhalt_fin.= ""; $query3 = "SELECT distinct a.did FROM prog_tmp_lb_bz a, prog_tmp_professor b WHERE a.did=b.did AND date_format(monat,'%Y') = '$jahrgang' AND (wert > 0 or a.art ='O') GROUP BY a.did, lbbzid ORDER BY doz_name asc, lbbzid asc"; $result3 = $db->query($query3) or die("Cannot execute query3b"); $ln_zaehler5 = 0; $ln_zaehler6 = 0; while ($row3 = $result3->fetch_array()) { $value_delta = ''; if ($ln_zaehler5 == 0) { $last_did = $row3['did']; $ln_zaehler5= 1; } if ($row3['did'] == $last_did) { $farbe = "#d8d8d8"; } else { $farbe = "#f4f4f4"; $ln_zaehler5= 0; } $last_did = $row3['did']; $query4 = "SELECT a.did, doz_titel, doz_vorname, doz_name, lbbzid, monat, sum(wert) wert, a.art FROM prog_tmp_lb_bz a, prog_tmp_professor b WHERE a.did=b.did AND date_format(monat,'%Y') = '$jahrgang' AND a.did = $row3[did] AND (wert > 0 or a.art ='O') GROUP BY a.did, lbbzid ORDER BY doz_name asc, lbbzid asc"; $result4 = $db->query($query4) or die("Cannot execute query4"); while ($row4 = $result4->fetch_array()) { if ($ln_zaehler6 == 60) { // Seitenumbruch nach 60 Zeilen $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
"; $ln_zaehler6 = 0; } if ($row4['art'] == 'F') { $art = 'Fiktiver Wert'; $edit = ""; } if ($row4['art'] == 'B') { $art = 'Erfasster Wert'; $edit = "$row4[did]"; } if ($row4['art'] == 'O') { $art = 'max. LBZ erreicht'; $edit = "$row4[did]"; } // if($row4['lbbzid'] < 1000){ // Mindestdatum und Ende Laufzeit ermitteln $result_laufz = $db->query("SELECT date_format(min(monat), '%d.%m.%Y') min_monat_form, date_format(max(monat), '%d.%m.%Y') max_monat_form FROM prog_tmp_lb_bz WHERE lbbzid='$row4[lbbzid]' AND did= '$row4[did]' LIMIT 1"); $row_laufz = $result_laufz->fetch_array(); $startdat = "$row_laufz[min_monat_form]"; $enddat = "$row_laufz[max_monat_form]"; $wert_neu = number_format($row4['wert'], 2, ',', '.'); $inhalt_fin.= ""; // Zähler für Zeilenumbruch $ln_zaehler6 = $ln_zaehler6 + 1; } } $inhalt_fin.= ""; $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
$row4[doz_name], $row4[doz_vorname] $startdat $enddat $wert_neu € $art
Summe: $ju_lb_bz €
"; $inhalt_fin.= "
"; // Berechnete Deltas $inhalt_fin.= ""; $inhalt_fin.= "

besondere Leistungsbezüge mtl. (LBZ) $jahrgang

"; $inhalt_fin.= ""; // Deltas $query3 = "SELECT distinct a.did FROM prog_tmp_lb_lz a, prog_tmp_professor b WHERE a.did=b.did AND date_format(monat,'%Y') = '$jahrgang' AND (wert > 0 or a.art ='O') GROUP BY a.did, lblzid, a.art ORDER BY doz_name asc, lblzid asc"; $result3 = $db->query($query3) or die("Cannot execute query3a"); $ln_zaehler = 0; $ln_zaehler1 = 0; while ($row3 = $result3->fetch_array()) { $value_delta = ''; if ($ln_zaehler == 0) { $last_did = $row3['did']; $ln_zaehler = 1; } if ($row3['did'] == $last_did) { $farbe = "#d8d8d8"; } else { $farbe = "#f4f4f4"; $ln_zaehler = 0; } $last_did = $row3['did']; $query4 = "SELECT a.did, doz_titel, doz_vorname, doz_name, lblzid, monat, sum(wert) wert, a.art FROM prog_tmp_lb_lz a, prog_tmp_professor b WHERE a.did=b.did AND date_format(monat,'%Y') = '$jahrgang' AND a.did = $row3[did] AND (wert > 0 or a.art ='O') GROUP BY a.did, lblzid, a.art ORDER BY doz_name asc, lblzid asc"; $result4 = $db->query($query4) or die("Cannot execute query4"); while ($row4 = $result4->fetch_array()) { if ($ln_zaehler1 == 60) { // Seitenumbruch nach 60 Zeilen $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
"; $ln_zaehler1 = 0; } if ($row4['art'] == 'F') { $art = 'Fiktiver Wert'; $edit = ""; } if ($row4['art'] == 'B') { $art = 'Erfasster Wert'; $edit = "$row4[did]"; } if ($row4['art'] == 'O') { $art = 'max. LBZ erreicht'; $edit = "$row4[did]"; } // if($row4['lblzid'] < 1000){ // Mindestdatum und Ende Laufzeit ermitteln $result_laufz = $db->query("SELECT date_format(min(monat), '%d.%m.%Y') min_monat_form, date_format(max(monat), '%d.%m.%Y') max_monat_form FROM prog_tmp_lb_lz WHERE lblzid='$row4[lblzid]' AND did= '$row4[did]' LIMIT 1"); $row_laufz = $result_laufz->fetch_array(); $startdat = "$row_laufz[min_monat_form]"; $enddat = "$row_laufz[max_monat_form]"; $wert_neu = number_format($row4['wert'], 2, ',', '.'); $inhalt_fin.= ""; // Zähler für Zeilenumbruch $ln_zaehler1 = $ln_zaehler1 + 1; } } $inhalt_fin.= ""; $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
$row4[doz_name], $row4[doz_vorname] $startdat $enddat $wert_neu € $art
Summe: $ju_lb_lz €
"; $inhalt_fin.= "
"; // Funktionszulagen // $inhalt_fin .= ""; $inhalt_fin.= ""; $inhalt_fin.= "

Funktionsleistungsbezüge $jahrgang

"; $inhalt_fin.= ""; $query5 = "SELECT distinct a.kfid FROM prog_tmp_lb_fz a, prog_kat_funktionen b WHERE a.kfid=b.kfid AND date_format(monat,'%Y') = '$jahrgang' and wert > 0 GROUP BY a.lbfzid, b.kfid, a.did ORDER BY bezeichnung asc, monat asc "; $result5 = $db->query($query5) or die("Cannot execute query4"); $ln_zaehler2 = 0; $ln_zaehler3 = 0; while ($row5 = $result5->fetch_array()) { $value_funktion = ''; if ($ln_zaehler2 == 0) { $last_kfid = $row5['kfid']; $ln_zaehler2 = 1; } if ($row5['kfid'] == $last_kfid) { $farbe = "#d8d8d8"; } else { $farbe = "#f4f4f4"; $ln_zaehler2 = 0; } $last_kfid = $row5['kfid']; $query6 = "SELECT lbfzid, b.kfid, a.did, sum(a.wert) wert, art, b.bezeichnung, monat FROM prog_tmp_lb_fz a, prog_kat_funktionen b WHERE a.kfid=b.kfid AND date_format(monat,'%Y') = '$jahrgang' AND a.kfid = $row5[kfid] and wert > 0 GROUP BY a.lbfzid, b.kfid, a.did ORDER BY bezeichnung asc, monat asc"; $result6 = $db->query($query6) or die("Cannot execute query6"); while ($row6 = $result6->fetch_array()) { if ($ln_zaehler3 == 60) { // Seitenumbruch nach 60 Zeilen $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
"; $ln_zaehler1 = 0; } if ($row6['art'] == 'F') { $art = 'Fiktiver Wert'; $edit = ""; } else { $art = 'Erfasster Wert'; $edit = "$row6[kfid]"; } if ($row6['did'] != 0) { // Wenn kein fiktiver Wert zugeordneten Prof suchen $result_name = $db->query("SELECT doz_titel, doz_vorname, doz_name, date_format(startdat, '%d.%m.%Y') startdat, date_format(enddat, '%d.%m.%Y') enddat FROM prog_tmp_professor a, prog_lb_fz b WHERE a.did=b.did AND a.did= '$row6[did]' AND b.lbfzid=$row6[lbfzid] ORDER BY startdat DESC LIMIT 1"); $row_name = $result_name->fetch_array(); $name = trim("$row_name[doz_titel] $row_name[doz_name], $row_name[doz_vorname]"); $startdat = "$row_name[startdat]"; $enddat = "$row_name[enddat]"; } else { // Startdatum des fiktiven Werts herausfinden $result_startf = $db->query("SELECT date_format(min(monat), '%d.%m.%Y') monat_form FROM prog_tmp_lb_fz WHERE kfid= '$row6[kfid]' AND art='F' ORDER BY Monat DESC LIMIT 1"); $row_startf = $result_startf->fetch_array(); $name = "Fiktiver Wert"; $startdat = "$row_startf[monat_form]"; $enddat = ""; } if ($row6['wert'] > 0) { $wert_neu = number_format($row6['wert'], 2, ',', '.'); $row6['fz_art'] = $art; $row6['edit'] = $edit; $row6['wert'] = $wert_neu; $row6['name'] = $name; $row6['startdat'] = $startdat; $row6['enddat'] = $enddat; $value_funktion[] = $row6; $inhalt_fin.= ""; // Zähler für Zeilenumbruch $ln_zaehler3 = $ln_zaehler3 + 1; } } } $inhalt_fin.= ""; $inhalt_fin.= "
Name Ab Datum Ende Jahresbetrag Art
$row6[bezeichnung] ($name) $startdat $enddat $wert_neu € $art
Summe: $ju_lb_fz €
"; $inhalt_fin.= "
"; // ############################################################################################################## // echo "
";
// echo $inhalt_fin;
// echo "
"; // exit; require_once ('html2pdf_v4.03/html2pdf.class.php'); // $inhalt_fin = ''.nl2br($inhalt_fin).''; try { // /* // seitenränder (in mm) $oben = 15; //mT $unten = 15; //mB $links = 15; //mL $rechts = 15; //mR // $html2pdf = new HTML2PDF('P', 'A4', 'de'); $html2pdf = new HTML2PDF('P', 'A4', 'de', true, 'UTF-8', array( $links, $oben, $rechts, $unten )); $html2pdf->pdf->SetDisplayMode('fullpage'); // $html2pdf->setDefaultFont('arialunicid0'); //add this line // $html2pdf->setModeDebug(); // $html2pdf->setDefaultFont('Arial'); $html2pdf->writeHTML($inhalt_fin, isset($_GET['vuehtml'])); $html2pdf->Output("Jahresuebersicht_$jahrgang.pdf", 'D'); // */ } catch(HTML2PDF_exception $e) { echo $e; exit; } ?>