Пример #1
0
 function einheiten_liste($link)
 {
     $mieten = new mietkonto();
     echo "<div class=\"einheit_auswahl\">";
     $mieten->erstelle_formular("Vermietete Einheit auswählen...", NULL);
     /* Liste der Einheiten falls Objekt ausgewählt wurde */
     if (isset($_SESSION['objekt_id'])) {
         $objekt_id = $_SESSION['objekt_id'];
         $mein_objekt = new objekt();
         $liste_haeuser = $mein_objekt->haeuser_objekt_in_arr($objekt_id);
         for ($i = 0; $i < count($liste_haeuser); $i++) {
             $result = mysql_query("SELECT * FROM EINHEIT WHERE EINHEIT_AKTUELL='1' && HAUS_ID='" . $liste_haeuser[$i]['HAUS_ID'] . "' ORDER BY EINHEIT_KURZNAME ASC");
             while ($row = mysql_fetch_assoc($result)) {
                 $einheiten_array[] = $row;
             }
         }
     } else {
         /* Liste aller Einheiten da kein Objekt ausgewählt wurde */
         $meine_einheiten = new einheit();
         $einheiten_array = $meine_einheiten->liste_aller_einheiten();
     }
     // Beispiel für ein Array $sx mit den Spalten $sx['dat'], $sx['name'], $sx['id'].
     $einheiten_array = array_sortByIndex($einheiten_array, 'EINHEIT_KURZNAME');
     $counter = 0;
     $spaltencounter = 0;
     echo "<table>";
     echo "<tr><td valign=\"top\">";
     $einheit_info = new einheit();
     for ($i = 0; $i <= count($einheiten_array); $i++) {
         $einheit_info->get_mietvertrag_id("" . $einheiten_array[$i]['EINHEIT_ID'] . "");
         $einheit_vermietet = $einheit_info->get_einheit_status("" . $einheiten_array[$i]['EINHEIT_ID'] . "");
         if ($einheit_vermietet) {
             $intern_link = "<a href=\"{$link}&mietvertrag_id=" . $einheit_info->mietvertrag_id . "\" class=\"nicht_gebucht_links\">" . $einheiten_array[$i]['EINHEIT_KURZNAME'] . "</a>&nbsp;";
             echo "{$intern_link}";
             echo "<br>";
             // Nach jeder Einheit Neuzeile
             $counter++;
         }
         if ($counter == 10) {
             echo "</td><td valign=\"top\">";
             $counter = 0;
             $spaltencounter++;
         }
         if ($spaltencounter == 4) {
             echo "</td></tr>";
             echo "<tr><td colspan=\"{$spaltencounter}\"><hr></td></tr>";
             echo "<tr><td valign=\"top\">";
             $spaltencounter = 0;
         }
     }
     echo "</td></tr></table>";
     // echo "<pre>";
     // print_r($einheiten_array);
     // echo "</pre>";
     $mieten->ende_formular();
     echo "</div>";
 }
Пример #2
0
function einheiten_liste()
{
    $mieten = new mietkonto();
    // $mieten->letzte_buchungen_anzeigen();
    echo "<div class=\"einheit_auswahl\">";
    $mieten->erstelle_formular("Einheit auswählen...", NULL);
    /* Liste der Einheiten falls Objekt ausgewählt wurde */
    if (isset($_SESSION['objekt_id'])) {
        $objekt_id = $_SESSION['objekt_id'];
        $mein_objekt = new objekt();
        $liste_haeuser = $mein_objekt->haeuser_objekt_in_arr($objekt_id);
        for ($i = 0; $i < count($liste_haeuser); $i++) {
            $hh_id = $liste_haeuser[$i]['HAUS_ID'];
            $result = mysql_query("SELECT * FROM EINHEIT WHERE EINHEIT_AKTUELL='1' && HAUS_ID='{$hh_id}' ORDER BY EINHEIT_KURZNAME ASC");
            while ($row = mysql_fetch_assoc($result)) {
                $einheiten_array[] = $row;
            }
        }
    } else {
        /* Liste aller Einheiten da kein Objekt ausgewählt wurde */
        $meine_einheiten = new einheit();
        $einheiten_array = $meine_einheiten->liste_aller_einheiten();
    }
    // Beispiel für ein Array $sx mit den Spalten $sx['dat'], $sx['name'], $sx['id'].
    $einheiten_array = array_sortByIndex($einheiten_array, 'EINHEIT_KURZNAME');
    // echo "<pre>";
    // print_r($einheiten_array);
    // echo "</pre>";
    $counter = 0;
    $spaltencounter = 0;
    echo "<table>";
    echo "<tr><td valign=\"top\">";
    $einheit_info = new einheit();
    // $mietkonto2 = new mietkonto;
    // $zeitraum = new zeitraum;
    // foreach ( $[ 'element' ] as $value ) {
    for ($i = 0; $i < count($einheiten_array); $i++) {
        $ee_id = $einheiten_array[$i]['EINHEIT_ID'];
        $einheit_vermietet = $einheit_info->get_einheit_status($ee_id);
        if ($einheit_vermietet) {
            $einheit_info->get_mietvertrag_id($ee_id);
            /*
             * $mi = new miete;
             * $saldo = $mi->saldo_berechnen($einheit_info->mietvertrag_id);
             *
             * if($saldo==0){
             * $mietkonto_status = "<font id=\"status_neutral\">(0)</font>";
             * }
             * if($saldo>0){
             * $mietkonto_status = "<font id=\"status_positiv\">(+)</font>";
             * }
             * if($saldo<0){
             * $mietkonto_status = "<font id=\"status_negativ\">(-)</font>";
             * }
             */
            $mietkonto_status = '';
            // if(isset($einheit_info->mietvertrag_id)){
            $anzahl_zahlungsvorgaenge = $mieten->anzahl_zahlungsvorgaenge($einheit_info->mietvertrag_id);
            $ekn = $einheiten_array[$i]['EINHEIT_KURZNAME'];
            if ($anzahl_zahlungsvorgaenge < 1) {
                echo "<a href=\"?daten=miete_buchen&schritt=buchungsauswahl&mietvertrag_id=" . $einheit_info->mietvertrag_id . "\" class=\"nicht_gebucht_links\">{$ekn}</a> {$mietkonto_status}&nbsp;";
            } else {
                echo "<a href=\"?daten=miete_buchen&schritt=buchungsauswahl&mietvertrag_id=" . $einheit_info->mietvertrag_id . "\" class=\"gebucht_links\">{$ekn}</a> {$mietkonto_status}&nbsp;";
            }
            echo "<br>";
            // Nach jeder Einheit Neuzeile
            $m = new mietvertrag();
            // class mietvertrag aus berlussimo_class.php;
            $m1 = new mietvertraege();
            // class mietvertraege NEUE KLASSE;
            $mv_ids_arr = $m->get_personen_ids_mietvertrag($einheit_info->mietvertrag_id);
            // $m1->mv_personen_anzeigen($mv_ids_arr); //$mv_ids_arr Array mit personan Ids
            $mieternamen_str = $m1->mv_personen_als_string($mv_ids_arr);
            echo $mieternamen_str . '<br>';
            // echo "<br>"; // Nach jeder Einheit Neuzeile
            // echo "$mietkonto_status";
            // ######mietkonto status ende
            $counter++;
        }
        if ($counter == 10) {
            echo "</td><td valign=\"top\">";
            $counter = 0;
            $spaltencounter++;
        }
        if ($spaltencounter == 5) {
            echo "</td></tr>";
            echo "<tr><td colspan=\"{$spaltencounter}\"><hr></td></tr>";
            echo "<tr><td valign=\"top\">";
            $spaltencounter = 0;
        }
    }
    echo "</td></tr></table>";
    // echo "<pre>";
    // print_r($einheiten_array);
    // echo "</pre>";
    $mieten->ende_formular();
    echo "</div>";
}
Пример #3
0
 function geldkonto_auswahl($link)
 {
     if (isset($_REQUEST['geldkonto_id'])) {
         $_SESSION['geldkonto_id'] = $_REQUEST['geldkonto_id'];
         /* Passendes Objekt wühlen */
         $gkk = new gk();
         $temp_objekt_id = $gkk->get_objekt_id($_SESSION['geldkonto_id']);
         $_SESSION['objekt_id'] = $temp_objekt_id;
         if (isset($_SESSION['last_url'])) {
             $url = $_SESSION['last_url'];
             unset($_SESSION['last_url']);
             weiterleiten($url);
         } else {
             header("Location: index.php");
         }
     }
     if (isset($_SESSION['geldkonto_id'])) {
         $link_kontoauszug = "<a href=\"?daten=buchen&option=kontoauszug_form\">Kontrolldaten zum Kontoauszug eingeben</a>";
         $link_sepa_ls = "<a href=\"index.php?daten=sepa&option=ls_auto_buchen\">LS-Autobuchen</a>";
         $aendern_link = "<a href=\"?daten=buchen&option=geldkonto_aendern\">Geldkonto ändern</a>";
         $this->akt_konto_bezeichnung = $this->geld_konto_bezeichung($_SESSION['geldkonto_id']);
         echo "Ausgewähltes Geldkonto -> {$this->akt_konto_bezeichnung} {$aendern_link} {$link_kontoauszug} {$link_sepa_ls}<br>";
         $geld = new geldkonto_info();
         $kontostand_aktuell = nummer_punkt2komma($geld->geld_konto_stand($_SESSION['geldkonto_id']));
         // echo "<h3>Kontostand aktuell: $kontostand_aktuell €</h3>";
         if (isset($_SESSION['temp_kontostand']) && isset($_SESSION['temp_kontoauszugsnummer'])) {
             $kontostand_temp = nummer_punkt2komma($_SESSION['temp_kontostand']);
             echo "<h3>Kontostand am {$_SESSION['temp_datum']} laut Kontoauszug {$_SESSION['temp_kontoauszugsnummer']} war {$kontostand_temp} €</h3>";
         } else {
             echo "<h3 style=\"color:red\">Kontrolldaten zum Kontoauszug fehlen</h3>";
             echo "<h3 style=\"color:red\">Weiterleitung erfolgt</h3>";
             weiterleiten_in_sec("?daten=buchen&option=kontoauszug_form", 2);
         }
         if ($kontostand_aktuell == $kontostand_temp) {
             echo "<h3>Kontostand aktuell: {$kontostand_aktuell} €</h3>";
         } else {
             echo "<h3 style=\"color:red\">Kontostand aktuell: {$kontostand_aktuell} €</h3>";
         }
     }
     if (!isset($_SESSION['geldkonto_id'])) {
         // echo "Geldkonto wählen<br>";
         $geld_konten_arr = $this->alle_geldkonten_arr();
         // print_r($geld_konten_arr);
         $anzahl_objekte = count($geld_konten_arr);
         if (is_array($geld_konten_arr)) {
             echo "<p class=\"geldkonto_auswahl\">";
             for ($i = 0; $i < $anzahl_objekte; $i++) {
                 $konto_id = $geld_konten_arr[$i]['KONTO_ID'];
                 // echo $konto_id;
                 $gk = new gk();
                 if ($gk->check_zuweisung_kos_typ($konto_id, 'Objekt', '')) {
                     $sortiert[] = $geld_konten_arr[$i];
                 } else {
                     $unsortiert[] = $geld_konten_arr[$i];
                 }
                 // echo "<a class=\"objekt_auswahl_buchung\" href=\"$link&geldkonto_id=".$geld_konten_arr[$i][KONTO_ID]."\">".$geld_konten_arr[$i][BEZEICHNUNG]."</a>&nbsp;<br>";
             }
             echo "<table class=\"sortable\">";
             echo "<tr><th>GELDKONTEN DER OBJEKTE</th></tr>";
             $z = 0;
             // echo '<pre>';
             // print_r($sortiert);
             // Aufruf von array_multisort() mit dem Array, das sortiert werden soll und den entsprechenden Flags
             $records = array_sortByIndex($sortiert, 'BEZEICHNUNG');
             // echo "<HR>";
             // print_r($records);
             $sortiert = $records;
             unset($records);
             for ($i = 0; $i < count($sortiert); $i++) {
                 $z++;
                 $konto_id = $sortiert[$i]['KONTO_ID'];
                 $bez = $sortiert[$i]['BEZEICHNUNG'];
                 echo "<tr class=\"zeile{$z}\"><td><a class=\"objekt_auswahl_buchung\" href=\"{$link}&geldkonto_id={$konto_id}\">{$bez}</a>&nbsp;</td></tr>";
                 if ($z == 2) {
                     $z = 0;
                 }
             }
             echo "</table>";
             echo "<table>";
             echo "<tr><th>ANDERE GELDKONTEN</th></tr>";
             $z = 0;
             /*
              * $records = array_sortByIndex($unsortiert,'BEZEICHNUNG');
              * $unsortiert = $records;
              * unset($records);
              */
             for ($i = 0; $i < count($unsortiert); $i++) {
                 $z++;
                 $konto_id = $unsortiert[$i]['KONTO_ID'];
                 $bez = $unsortiert[$i]['BEZEICHNUNG'];
                 echo "<tr class=\"zeile{$z}\"><td><a class=\"objekt_auswahl_buchung\" href=\"{$link}&geldkonto_id={$konto_id}\">{$bez}</a>&nbsp;</td></tr>";
                 if ($z == 2) {
                     $z = 0;
                 }
             }
             echo "</table>";
             echo "</p>";
         } else {
             echo "Keine Geldkonten";
         }
     }
 }
Пример #4
0
 function mahnung_pdf($mv_id, $fristdatum, $geldkonto_id, $mahngebuehr)
 {
     ob_clean();
     // ausgabepuffer leeren
     include_once 'classes/class_bpdf.php';
     $pdf = new Cezpdf('a4', 'portrait');
     $bpdf = new b_pdf();
     $bpdf->b_header($pdf, 'Partner', $_SESSION[partner_id], 'portrait', 'Helvetica.afm', 6);
     $pdf->ezSetCmMargins(4.5, 1, 1, 1);
     $berlus_schrift = 'pdfclass/fonts/Times-Roman.afm';
     $text_schrift = 'pdfclass/fonts/Arial.afm';
     $mv = new mietvertraege();
     $mz = new miete();
     $d = new detail();
     $e = new einheit();
     $jahr = date("Y");
     $monat = date("m");
     $mz->mietkonto_berechnung($mv_id);
     $saldo = $mz->erg;
     $mv->get_mietvertrag_infos_aktuell($mv_id);
     echo '<pre>';
     print_r($mv);
     die;
     $e->get_einheit_info($mv->einheit_id);
     $p = new person();
     if ($mv->anzahl_personen == 1) {
         $p->get_person_infos($mv->personen_ids['0']['PERSON_MIETVERTRAG_PERSON_ID']);
         $geschlecht = $d->finde_person_geschlecht($mv->personen_ids[0]['PERSON_MIETVERTRAG_PERSON_ID']);
         if ($geschlecht == 'weiblich') {
             $anrede_p = 'geehrte Frau';
         }
         if ($geschlecht == 'männlich') {
             $anrede_p = 'geehrter Herr';
         }
         $anrede = $anrede . "{$anrede_p} {$p->person_nachname},";
         $personen_anrede[0][anrede] = $anrede;
         $personen_anrede[0][geschlecht] = $geschlecht;
     }
     if ($mv->anzahl_personen > 1) {
         for ($a = 0; $a < $mv->anzahl_personen; $a++) {
             $p->get_person_infos($mv->personen_ids[$a][PERSON_MIETVERTRAG_PERSON_ID]);
             $geschlecht = $d->finde_person_geschlecht($mv->personen_ids[$a]['PERSON_MIETVERTRAG_PERSON_ID']);
             if ($geschlecht == 'weiblich') {
                 $anrede_p = 'geehrte Frau';
             }
             if ($geschlecht == 'männlich') {
                 $anrede_p = 'geehrter Herr';
             }
             $anrede = "{$anrede_p} {$p->person_nachname},";
             $personen_anrede[$a]['anrede'] = $anrede;
             $personen_anrede[$a]['geschlecht'] = $geschlecht;
         }
     }
     $personen_anreden = array_sortByIndex($personen_anrede, 'geschlecht', SORT_DESC);
     $pdf->selectFont($text_schrift);
     for ($b = 0; $b < $mv->anzahl_personen; $b++) {
         $anrede_p = $personen_anreden[$b][anrede];
         if ($b < 1) {
             $anrede = "Sehr {$anrede_p}\n";
         } else {
             $anrede = $anrede . "sehr {$anrede_p}\n";
             // \n neue zeile in pdf
         }
     }
     $pdf->ezSetDy(-15);
     $pdf->ezSetCmMargins(3, 3, 3, 3);
     $pdf->ezText("{$mv->personen_name_string_u}\n{$e->haus_strasse} {$e->haus_nummer}\n\n{$e->haus_plz} {$e->haus_stadt}", 12);
     $pdf->ezSetDy(-60);
     $pdf->ezText("<b>Mahnung</b>", 12);
     $pdf->ezSetDy(13);
     $datum_heute = date("d.m.Y");
     $pdf->ezText("Berlin, {$datum_heute}", 11, array('justification' => 'right'));
     $pdf->ezSetCmMargins(3, 3, 3, 3);
     $pdf->ezText("Objekt: {$e->haus_strasse} {$e->haus_nummer}, {$e->haus_plz} {$e->haus_stadt}", 11);
     $pdf->ezText("Einheit/Mieternummer: {$mv->einheit_kurzname}", 11);
     $pdf->ezSetDy(-11);
     /* Faltlinie */
     $pdf->setLineStyle(0.2);
     $pdf->line(5, 542, 20, 542);
     $pdf->ezText("{$anrede}", 11);
     $saldo = abs($saldo);
     $saldo_a = nummer_punkt2komma($saldo);
     $pdf->ezText("nach Durchsicht unserer Buchhaltungsunterlagen mussten wir feststellen, dass Ihr Mietkonto folgenden Rückstand aufweist:\n", 11);
     $pdf->ezSetCmMargins(3, 3, 6, 7);
     $pdf->ezText("<b>Mietrückstand</b>", 11);
     $pdf->ezSetDy(11);
     $pdf->ezText("<b>{$saldo_a} €</b>", 12, array('justification' => 'right'));
     $pdf->setColor(0.0, 0.0, 0.0);
     $pdf->ezText("<b>zzgl. Mahngebühr</b>", 11);
     $pdf->ezSetDy(11);
     $pdf->ezText("<b>{$mahngebuehr} €</b>", 11, array('justification' => 'right'));
     /* Linier über Gesamtrückstand */
     $pdf->ezSetDy(-5);
     $pdf->line(170, $pdf->y, 403, $pdf->y);
     $pdf->setColor(0.0, 0.0, 0.0);
     $pdf->ezText("<b>Gesamtrückstand</b>", 11);
     $pdf->ezSetDy(11);
     $mahngebuehr_r = nummer_komma2punkt($mahngebuehr);
     $gesamt_rueckstand = $saldo + $mahngebuehr_r;
     $gesamt_rueckstand = nummer_punkt2komma($gesamt_rueckstand);
     $pdf->ezText("<b>{$gesamt_rueckstand} €</b>\n", 11, array('justification' => 'right'));
     $pdf->ezSetCmMargins(3, 3, 3, 3);
     $g = new geldkonto_info();
     $g->geld_konto_details($geldkonto_id);
     $pdf->setColor(0.0, 0.0, 0.0);
     $pdf->ezText("Die konkreten Fehlbeträge entnehmen Sie bitte dem beigefügten Mietkonto.", 11);
     $pdf->ezText("Wir fordern Sie auf, den genannten Betrag unter Angabe der bei uns geführten Mieternummer bis zum", 11);
     $pdf->ezSetCmMargins(3, 3, 9, 3);
     $pdf->ezText("<b>{$fristdatum}</b>\n", 11);
     $pdf->ezSetCmMargins(3, 3, 3, 3);
     $pdf->ezText("<b>auf das Konto {$g->kontonummer}  bei der {$g->kredit_institut}, BLZ {$g->blz}</b>\n", 11);
     $pdf->setColor(0.0, 0.0, 0.0);
     $pdf->ezText("zu überweisen.\n\n", 11);
     $pdf->ezText("Für Rückfragen stehen wir Ihnen gerne zur Verfügung.\n\n", 11);
     $pdf->ezText("Mit freundlichen Grüßen\n\n", 11);
     $pdf->ezText("Wolfgang Wehrheim\n\n", 11);
     $pdf->ezText("Dieses Schreiben wurde maschinell erstellt und ist daher ohne Unterschrift gültig.\n", 11);
     $pdf->addInfo('Title', "Mahnung {$mv->personen_name_string}");
     $pdf->addInfo('Author', $_SESSION[username]);
     // ### MIETKONTENBLATT####
     $pdf->ezNewPage();
     $pdf->ezSetMargins(135, 70, 50, 50);
     $mz->mkb2pdf_mahnung_letzter_nullstand($pdf, $mv_id);
     $fristdatum_sql = date_german2mysql($fristdatum);
     $minus_saldo = '-' . $saldo;
     $this->update_zahlungsfrist_m($mv_id, $fristdatum_sql, $minus_saldo, '-' . $mahngebuehr_r);
     /* PDF AUSGABE */
     // $pdf->ezStream();
 }
Пример #5
0
 function pdf_income_reports2015_3($pdf, $objekt_id, $jahr)
 {
     $cols_num['MONAT']['TXT'] = 'Month';
     $cols_num['FIX']['TXT'] = 'Fixed costs';
     $cols_num['FIX']['TXT1'] = 'Management fee, maintenance reserve';
     $cols_num['NK']['TXT'] = 'Running Costs';
     $cols_num['NK']['TXT1'] = 'Running service costs, cleaning, heating, housekeeping, etc..';
     /* Abzufragende Konten */
     $kokonten[] = '1023';
     // Kosten zu Einheit
     $cols_num['1023']['TXT'] = 'Repairs';
     $cols_num['1023']['TXT1'] = 'Repairs and general expenses';
     $kokonten[] = '4180';
     // Gewährte Minderungen
     $cols_num['4180']['TXT'] = 'Rent decrease';
     $cols_num['4180']['TXT1'] = '';
     $kokonten[] = '4280';
     // Gerichtskosten
     $cols_num['4280']['TXT'] = 'Legal';
     $cols_num['4280']['TXT1'] = 'Legal costs - court fees, lawyers, execution';
     $kokonten[] = '4281';
     // Anwaltskosten MEA
     $cols_num['4281']['TXT'] = 'Legal';
     $cols_num['4281']['TXT1'] = 'Legal costs - court fees, lawyers, execution';
     $kokonten[] = '4282';
     // Gerichtsvollzieher
     $cols_num['4282']['TXT'] = 'Legal';
     $cols_num['4282']['TXT1'] = 'Legal costs - court fees, lawyers, execution';
     $kokonten[] = '5010';
     // Eigentümereinlagen
     $cols_num['5010']['TXT'] = 'Payment by owner';
     $cols_num['5010']['TXT1'] = 'Money received by the owner';
     $kokonten[] = '5020';
     // ET Entnahmen TRANSFER
     $cols_num['5020']['TXT'] = 'Transfer';
     $cols_num['5020']['TXT1'] = 'Money transfered to owner';
     $kokonten[] = '5081';
     // ET Entnahmen TRANSFER DARLEHEN
     $cols_num['5081']['TXT'] = 'Loan';
     $cols_num['5081']['TXT1'] = 'Money transfered to banc';
     // $kokonten[] = '5021'; // Hausgeld
     // $kokonten[] = '5400'; // Durch INS zu Erstatten
     $kokonten[] = '5500';
     // INS Maklergebühr
     $cols_num['5500']['TXT'] = 'Brokerage fee';
     $cols_num['5500']['TXT1'] = '';
     $kokonten[] = '5600';
     // Mietaufhegungsvereinbarungen
     $cols_num['5600']['TXT'] = 'Compensation';
     $cols_num['5600']['TXT1'] = 'Compensation for evacuation';
     // $kokonten[] = '6000'; // Hausgeldzahlungen
     // $kokonten[] = '6010'; // Heizkosten
     // $kokonten[] = '6020'; // Nebenkosten / Hausgeld
     // $kokonten[] = '6030'; // IHR
     // $kokonten[] = '6060'; // Verwaltergebühr
     $kokonten[] = '80001';
     // Mieteinnahme
     $cols_num['80001']['TXT'] = 'Rental Income';
     $cols_num['80001']['TXT1'] = 'Rent received by the tenant (Brutto, \'warm\'), including service costs, heating, etc.';
     define("EINNAHMEN_REPORT", "Income report");
     define("OBJEKT", "Object");
     define("WOHNUNG", "Flat");
     define("EIGENTUEMER", "<b>Owner</b>");
     define("LAGE", "Location");
     define("TYP", "Type");
     define("FLAECHE", "Living space");
     define("SUMMEN", "sum [€]");
     define("MONAT2", "month");
     define("IHR", "for maintenance [0,40€*m²]");
     define("HV", "managing fee [€]");
     define("REP", "repairs [€]");
     define("AUSZAHLUNG", "actual transfer [€]");
     define("DATUM", "Date");
     $oo = new objekt();
     $oo->get_objekt_infos($objekt_id);
     $datum_von = "{$jahr}-01-01";
     $datum_bis = "{$jahr}-12-31";
     $weg = new weg();
     $m_arr_jahr = $weg->monatsarray_erstellen($datum_von, $datum_bis);
     // echo '<pre>';
     // print_r($m_arr_jahr);
     // die();
     $gk = new geldkonto_info();
     $gk_arr = $gk->geldkonten_arr('OBJEKT', $objekt_id);
     $anz_gk = count($gk_arr);
     // ###
     // print_r($gk_arr);
     // die();
     // ####
     $d = new detail();
     /* Nutzenlastenwechsel */
     $nl_datum = $d->finde_detail_inhalt('Objekt', $objekt_id, 'Nutzen-Lastenwechsel');
     $nl_datum_arr = explode('.', $nl_datum);
     //$nl_tag = $nl_datum_arr [0];
     //$nl_monat = $nl_datum_arr [1];
     //$nl_jahr = $nl_datum_arr [2];
     /* Verwaltungsübernahme */
     $vu_datum = $d->finde_detail_inhalt('Objekt', $objekt_id, 'Verwaltungsübernahme');
     $vu_datum_arr = explode('.', $vu_datum);
     //$vu_tag = $vu_datum_arr [0];
     //$vu_monat = $vu_datum_arr [1];
     //$vu_jahr = $vu_datum_arr [2];
     // echo "$objekt_id $jahr";
     $ein_arr = $weg->einheiten_weg_tabelle_arr($objekt_id);
     $anz_e = count($ein_arr);
     // $cols = array('MONAT'=>MONAT,'NT'=>NT, 'IHR'=>IHR, 'HV'=>HV,'FIX'=>FIX, 'LEER'=>LEER, 'MV_NAME'=>MIETER, 'KM_S'=>KM_S, 'KM_SA'=>KMANT, 'M_ERG'=>ERG, 'M_ERGA'=>ERGA);
     $cols['MONAT'] = 'MONAT';
     $cols['NT'] = 'NT';
     $cols['IHR'] = IHR;
     $cols['HV'] = HV;
     $cols['FIX'] = 'FIX';
     // $cols['LEER'] = LEER;
     $cols['MV_NAME'] = 'MIETER';
     $cols['KOS_BEZ'] = 'KOS_BEZ';
     $cols['WM_S'] = 'WM_S';
     $cols['MWST'] = 'MWST';
     $cols['NK'] = 'NK';
     $cols['KM_S'] = 'KM_S';
     $cols['KM_SA'] = 'KM_SA';
     $cols['M_ERG'] = 'M_ERG';
     $cols['TXT'] = 'TXT';
     /* schleife Einheiten */
     for ($e = 0; $e < $anz_e; $e++) {
         $einheit_id = $ein_arr[$e]['EINHEIT_ID'];
         $weg = new weg();
         // $et_arr = $weg->get_eigentuemer_arr($einheit_id);
         echo '<pre>';
         $et_arr = $weg->get_eigentuemer_arr_jahr($einheit_id, $jahr);
         // echo "$einheit_id ";
         // print_r($et_arr);
         // die();
         $anz_et = count($et_arr);
         /* Schleife für ET */
         $sum_hv = 0;
         $sum_ihr = 0;
         $sum_fix = 0;
         $sum_km_ant = 0;
         $sum_wm_s = 0;
         $sum_nk = 0;
         $sum_mwst = 0;
         $sum_km_s = 0;
         $sum_konten = array();
         for ($et = 0; $et < $anz_et; $et++) {
             // print_r($et_arr);
             $et_id = $et_arr[$et]['ID'];
             /* Personenkontaktdaten Eigentümer */
             $weg_nn = new weg();
             $et_p_id = $weg_nn->get_person_id_eigentuemer_arr($et_id);
             $email_arr_a = array();
             if (is_array($et_p_id)) {
                 $anz_pp = count($et_p_id);
                 for ($pe = 0; $pe < $anz_pp; $pe++) {
                     $et_p_id_1 = $et_p_id[$pe]['PERSON_ID'];
                     // echo $et_p_id_1;
                     $detail = new detail();
                     if ($detail->finde_detail_inhalt('PERSON', $et_p_id_1, 'Email')) {
                         $email_arr = $detail->finde_alle_details_grup('PERSON', $et_p_id_1, 'Email');
                         for ($ema = 0; $ema < count($email_arr); $ema++) {
                             $em_adr = $email_arr[$ema]['DETAIL_INHALT'];
                             $email_arr_a[] = $em_adr;
                         }
                         // $my_arr[$z]['EMAILS'][] = $detail->finde_detail_inhalt('PERSON', $et_p_id_1, 'Email');
                     }
                 }
             }
             $et_von_sql = $et_arr[$et]['VON'];
             $et_bis_sql = $et_arr[$et]['BIS'];
             // echo "$et_id<br>";
             $weg1 = new weg();
             $weg1->get_eigentumer_id_infos4($et_id);
             $weg->get_eigentumer_id_infos4($et_id);
             echo "<b>{$weg1->einheit_kurzname} {$weg1->empf_namen}</b><br>";
             /* Zeitarray ET */
             $vond = $jahr . '0101';
             $bisd = $jahr . '1231';
             $et_von = str_replace('-', '', $et_von_sql);
             if ($et_bis_sql != '0000-00-00') {
                 $et_bis = str_replace('-', '', $et_bis_sql);
             } else {
                 $et_bis = str_replace('-', '', "{$jahr}-12-31");
             }
             if ($et_von > $vond) {
                 $datum_von = $et_von_sql;
             }
             if ($et_bis < $bisd) {
                 $datum_bis = $et_bis_sql;
             }
             if ($et_bis < $vond) {
                 $datum_von = '0000-00-00';
                 $datum_bis = '0000-00-00';
             }
             // $m_arr= $weg->monatsarray_erstellen($weg_et->eigentuemer_von,$datum_bis);
             // echo "$datum_bis - $datum_bis";
             $m_arr = $weg->monatsarray_erstellen($datum_von, $datum_bis);
             $anz_mon_et = count($m_arr);
             $et_mon_arr = '';
             for ($me = 0; $me < $anz_mon_et; $me++) {
                 $et_mon_arr[] = $m_arr[$me]['monat'];
             }
             // print_r($et_mon_arr);
             // die();
             /* Datum zurücksetzen auf Jahresanfang bzw. Ganzjahr */
             $datum_von = "{$jahr}-01-01";
             $datum_bis = "{$jahr}-12-31";
             // print_r($m_arr);
             $anz_m = count($m_arr_jahr);
             /* Schlife Monate */
             $zeile = 0;
             for ($m = 0; $m < $anz_m; $m++) {
                 $monat = $m_arr_jahr[$m]['monat'];
                 $jahr = $m_arr_jahr[$m]['jahr'];
                 /* Wenn der ET vom Monat */
                 if (in_array($monat, $et_mon_arr)) {
                     $key = array_search($monat, $et_mon_arr);
                     $et_monat = $m_arr[$key]['monat'];
                     $et_jahr = $m_arr[$key]['jahr'];
                     $tage = $m_arr[$key]['tage_m'];
                     $n_tage = $m_arr[$key]['tage_n'];
                     $pdf_tab[$e][$et][$monat]['NT'] = $n_tage;
                     // if($pdf_tab[$e][$et]$et_monat]['IHR']=='---'){
                     // $n_tage = $tage;
                     // }
                     // ##########ANFANG FIXKOSTEN##########################
                     /* FIXKOSTEN */
                     /* Fixkosten Hausgeld oder Formel */
                     $hg = new weg();
                     $hg->get_wg_info($monat, $jahr, 'Einheit', $einheit_id, 'Hausgeld');
                     $hausgeld_soll = $hg->gruppe_erg / $tage * $n_tage;
                     /* Fixkosten nach Formel */
                     $hausgeld_soll_f = ($weg->einheit_qm_weg * 0.4 + 30) / $tage * $n_tage;
                     // echo "$hausgeld_soll $hausgeld_soll_f<hr>";
                     if ($hausgeld_soll_f > $hausgeld_soll) {
                         $pdf_tab[$e][$et][$monat]['MONAT'] = "<b>" . monat2name($et_monat, 'en') . " {$et_jahr}</b>";
                         $hausgeld_soll = $hausgeld_soll_f;
                         $pdf_tab[$e][$et][$monat]['IHR'] = nummer_punkt2komma($weg->einheit_qm_weg * -0.4 / $tage * $n_tage);
                         $sum_ihr += nummer_komma2punkt(nummer_punkt2komma($weg->einheit_qm_weg * -0.4 / $tage * $n_tage));
                         $pdf_tab[$e][$et][$monat]['HV'] = nummer_punkt2komma(-30.0 / $tage * $n_tage);
                         $sum_hv += nummer_komma2punkt(nummer_punkt2komma(-30.0 / $tage * $n_tage));
                         $pdf_tab[$e][$et][$monat]['FIX'] = nummer_komma2punkt(nummer_punkt2komma(($weg->einheit_qm_weg * -0.4 + -30) / $tage * $n_tage));
                         $sum_fix += nummer_komma2punkt(nummer_punkt2komma(($weg->einheit_qm_weg * -0.4 + -30) / $tage * $n_tage));
                     } else {
                         /* Wenn nicht der ET vom Monat */
                         $pdf_tab[$e][$et][$monat]['MONAT'] = "<b>" . monat2name($et_monat) . " {$et_jahr}</b>";
                         $pdf_tab[$e][$et][$monat]['IHR'] = '0.000';
                         $pdf_tab[$e][$et][$monat]['HV'] = '0.000';
                         $pdf_tab[$e][$et][$monat]['FIX'] = nummer_komma2punkt(nummer_punkt2komma($hausgeld_soll * -1 / $tage * $n_tage));
                         $sum_fix += nummer_komma2punkt(nummer_punkt2komma($hausgeld_soll * -1 / $tage * $n_tage));
                     }
                     // ##########ENDE FIXKOSTEN##########################
                     // ##########ANFANG LEERSTAND JA NEIN##########################
                     if (isset($mv_arr)) {
                         unset($mv_arr);
                     }
                     // $mv_arr = array();
                     $ltm = letzter_tag_im_monat($et_monat, $et_jahr);
                     $mv_arr = $this->get_mv_et_zeitraum_arr($einheit_id, "{$et_jahr}-{$et_monat}-01", "{$et_jahr}-{$et_monat}-{$ltm}");
                     // if($einheit_id=='1384'){
                     // echo "<b>"."$et_jahr-$et_monat-01", "$et_jahr-$et_monat-$ltm"."</b>";
                     // print_r($mv_arr);
                     // die();
                     // }
                     if (is_array($mv_arr)) {
                         // print_r($mv_arr);
                         // die();
                         $pdf_tab[$e][$et][$monat]['LEER'] = 'N';
                         $anz_mv = count($mv_arr);
                         // #########MIETVERTRÄGE IM MONAT###########
                         for ($mva = 0; $mva < $anz_mv; $mva++) {
                             $mv_id = $mv_arr[$mva]['MIETVERTRAG_ID'];
                             $mvv = new mietvertraege();
                             $mvv->get_mietvertrag_infos_aktuell($mv_id);
                             $pdf_tab[$e][$et][$monat]['MV_NAME'] = substr(bereinige_string($mvv->personen_name_string), 0, 30);
                             $mk = new mietkonto();
                             $mk->kaltmiete_monatlich($mv_id, $et_monat, $et_jahr);
                             $sum_ford_m_inkl_mwst = $mk->summe_forderung_monatlich($mv_id, $et_monat, $et_jahr);
                             $sum_for_arr = explode('|', $sum_ford_m_inkl_mwst);
                             if (count($sum_for_arr) > 1) {
                                 $wm = $sum_for_arr[0];
                                 $mwst = $sum_for_arr[1];
                             } else {
                                 $wm = $sum_ford_m_inkl_mwst;
                                 $mwst = '0.00';
                             }
                             // $mk->summe_forderung_monatlich($mv_id, $monat, $jahr)
                             $pdf_tab[$e][$et][$monat]['WM_S'] = $wm;
                             $sum_wm_s += $wm;
                             $pdf_tab[$e][$et][$monat]['MWST'] = $mwst;
                             $sum_mwst += $mwst;
                             $pdf_tab[$e][$et][$monat]['NK'] = nummer_komma2punkt(nummer_punkt2komma($wm - nummer_komma2punkt(nummer_punkt2komma($mk->ausgangs_kaltmiete / $tage * $n_tage))));
                             $pdf_tab[$e][$et][$monat]['NK'] = nummer_komma2punkt(nummer_punkt2komma($pdf_tab[$e][$et][$monat]['NK'] * -1));
                             // $sum_nk += $pdf_tab[$e][$et][$zeile]['NK'];
                             $sum_nk += $pdf_tab[$e][$et][$monat]['NK'];
                             $pdf_tab[$e][$et][$monat]['KM_S'] = $mk->ausgangs_kaltmiete;
                             $sum_km_s += $pdf_tab[$e][$et][$monat]['KM_S'];
                             $pdf_tab[$e][$et][$monat]['KM_SA'] = nummer_komma2punkt(nummer_punkt2komma($mk->ausgangs_kaltmiete / $tage * $n_tage));
                             $sum_km_ant += $pdf_tab[$e][$et][$monat]['KM_SA'];
                             /* Saldoberechnung wegen SALDO VV nicht möglich */
                             $mz = new miete();
                             // $mz->mietkonto_berechnung($mv_id);
                             $mz->mietkonto_berechnung_monatsgenau($mv_id, $et_jahr, $et_monat);
                             $pdf_tab[$e][$et][$monat]['M_ERG'] = nummer_komma2punkt(nummer_punkt2komma($mz->erg));
                             $pdf_tab[$e][$et][$monat]['M_ERGA'] = nummer_komma2punkt(nummer_punkt2komma($mz->erg / $tage * $n_tage));
                             // print_r($mz);
                             // die();
                             if ($anz_mv > 0) {
                                 $zeile++;
                             }
                             // unset($mv_id);
                         }
                     } else {
                         $pdf_tab[$e][$et][$monat]['LEER'] = 'J';
                         $pdf_tab[$e][$et][$monat]['MV_NAME'] = 'LEER';
                         $mv_arr = '';
                     }
                 } else {
                     // print_r($m_arr);
                     $pdf_tab[$e][$et][$monat]['MONAT'] = "<b>" . monat2name($monat) . " {$jahr}</b>";
                     $pdf_tab[$e][$et][$monat]['IHR'] = '---';
                     $pdf_tab[$e][$et][$monat]['HV'] = '---';
                     $pdf_tab[$e][$et][$monat]['FIX'] = '---';
                 }
                 if (in_array($monat, $et_mon_arr)) {
                     /* Schleife GELD-Konto */
                     for ($g = 0; $g < $anz_gk; $g++) {
                         $gk_id = $gk_arr[$g]['KONTO_ID'];
                         // echo "<b>GK: $gk_id<br></b>";
                         // $zeile++;
                         if (isset($buchungen)) {
                             unset($buchungen);
                         }
                         // if(isset($mv_id)){
                         if ($pdf_tab[$e][$et][$zeile]['LEER'] != 'J') {
                             $buchungen = $this->bebuchte_konten_brutto($gk_id, $einheit_id, $monat, $jahr, $et_id, $mv_arr);
                         } else {
                             $buchungen = $this->bebuchte_konten_brutto($gk_id, $einheit_id, $monat, $jahr, $et_id);
                         }
                         if (is_array($buchungen)) {
                             $anz_bu = count($buchungen);
                             $gki1 = new geldkonto_info();
                             $gki1->geld_konto_details($gk_id);
                             for ($b = 0; $b < $anz_bu; $b++) {
                                 $bkonto = $buchungen[$b]['KONTENRAHMEN_KONTO'];
                                 if (!empty($bkonto)) {
                                     $b_konten_arr[] = $bkonto;
                                     $betrag = nummer_komma2punkt(nummer_punkt2komma($buchungen[$b]['BETRAG']));
                                     if ($bkonto == '5020') {
                                         $betrag = nummer_komma2punkt(nummer_punkt2komma($buchungen[$b]['BETRAG'])) * -1;
                                         // $betrag = nummer_komma2punkt(nummer_punkt2komma($buchungen[$b]['BETRAG']));
                                     }
                                     $kos_typ = $buchungen[$b]['KOSTENTRAEGER_TYP'];
                                     $kos_id = $buchungen[$b]['KOSTENTRAEGER_ID'];
                                     $vzweck = $buchungen[$b]['VERWENDUNGSZWECK'];
                                     $datum = $buchungen[$b]['DATUM'];
                                     // echo "$betrag<br>";
                                     $pdf_tab[$e][$et][$monat][$bkonto] += nummer_komma2punkt(nummer_punkt2komma($betrag));
                                     // NEU
                                     $betrag_p = $pdf_tab[$e][$et][$monat][$bkonto];
                                     $pdf_tab[$e][$et][$monat][$bkonto] = nummer_komma2punkt(nummer_punkt2komma($betrag_p));
                                     // $pdf_tab[$e][$et][$monat][$bkonto] = nummer_komma2punkt(nummer_punkt2komma($pdf_tab[$e][$et][$monat][$bkonto]));//NEU
                                     // echo nummer_komma2punkt(nummer_punkt2komma($betrag));//NEU
                                     // die();
                                     $r = new rechnung();
                                     $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
                                     // $pdf_tab[$e][$et][$zeile]['KOS_BEZ'] = str_replace('<br>','',$kos_bez);
                                     // $pdf_tab[$e][$et][$zeile]['TXT'] = "<b>$gki1->geldkonto_bez | $gki1->kredit_institut</b> - ".$vzweck;
                                     // $pdf_tab[$e][$et][$zeile]['MONAT'] = date_mysql2german($datum);
                                     $sum_konten[$bkonto] += nummer_komma2punkt(nummer_punkt2komma($betrag));
                                     $sum_konten[$bkonto] = nummer_komma2punkt(nummer_punkt2komma($sum_konten[$bkonto]));
                                     $cols[$bkonto] = $bkonto;
                                     $zeile++;
                                 }
                             }
                         }
                         // print_r($buchungen);
                     }
                     // end for GK
                 }
                 // die();
                 $zeile++;
             }
             // end for MONATE
             // die();
             /* Summe pro ET */
             $anz_z = count($pdf_tab[$e][$et]);
             $pdf_tab[$e][$et][$monat + 1]['MONAT'] = "<b>SUMME</b>";
             $pdf_tab[$e][$et][$monat + 1]['IHR'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_ihr)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['HV'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_hv)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['FIX'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_fix)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['KM_S'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_km_s)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['KM_SA'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_km_ant)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['WM_S'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_wm_s)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['MWST'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_mwst)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['NK'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_nk)) . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['EINHEIT'] = "<b>" . $weg1->einheit_kurzname . "</b>";
             $pdf_tab[$e][$et][$monat + 1]['ET'] = "<b>" . $weg1->empf_namen . "</b>";
             // $pdf_last[$et_id] = $pdf_tab[$e][$et][$zeile+1];
             $bb_keys = array_keys($sum_konten);
             for ($bb = 0; $bb < count($sum_konten); $bb++) {
                 $kto = $bb_keys[$bb];
                 $pdf_tab[$e][$et][$monat + 1][$kto] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($sum_konten[$kto])) . "</b>";
             }
             $sum_ihr = 0;
             $sum_hv = 0;
             $sum_fix = 0;
             $sum_km_ant = 0;
             $sum_km_s = 0;
             $sum_wm_s = 0;
             $sum_nk = 0;
             $sum_mwst = 0;
             // $sum_konten = array();
             $email_arr_aus = array_unique($email_arr_a);
             $anz_email = count($email_arr_aus);
             $pdf->setColor(255, 255, 255, 255);
             // Weiss
             for ($ema = 0; $ema < $anz_email; $ema++) {
                 $email_adr = $email_arr_aus[$ema];
                 $pdf->ezText("{$email_adr}", 10);
                 $pdf->ezSetDy(10);
                 // abstand
             }
             $pdf->setColor(0, 0, 0, 1);
             // schwarz
             $pdf->ezSetDy(10);
             // abstand
             $weg1->eigentuemer_von_d = date_mysql2german($weg1->eigentuemer_von);
             $weg1->eigentuemer_bis_d = date_mysql2german($weg1->eigentuemer_bis);
             $weg1->empf_namen = str_replace('Frau', 'Ms.', $weg1->empf_namen);
             $weg1->empf_namen = str_replace('Herr', 'Mr.', $weg1->empf_namen);
             $pdf->ezText(WOHNUNG . ": {$weg1->einheit_kurzname}\n" . LAGE . ": {$weg1->einheit_lage}\n{$weg1->haus_strasse} {$weg1->haus_nummer}, {$weg1->haus_plz} {$weg1->haus_stadt}\n\n" . EIGENTUEMER . ":\n{$weg1->empf_namen}", 10);
             // $cols = array('MONAT'=>MONAT,'NT'=>NT, 'IHR'=>IHR, 'HV'=>HV,'FIX'=>FIX, 'LEER'=>LEER, 'MV_NAME'=>MIETER, 'KM_S'=>KM_S, 'KM_SA'=>KMANT, 'M_ERG'=>ERG, 'M_ERGA'=>ERGA);
             // $pdf->ezTable($pdf_tab[$e][$et], $cols, EINNAHMEN_REPORT." $jahr - $weg->haus_strasse $weg->haus_nummer in $weg->haus_plz $weg->haus_stadt" , array('showHeadings'=>1,'shaded'=>1, 'titleFontSize' => 8, 'fontSize' => 7, 'xPos'=>40,'xOrientation'=>'right', 'width'=>760,'cols'=>array('TXT'=>array('justification'=>'right'), 'IHR'=>array('justification'=>'right'), 'HV'=>array('justification'=>'right'))));
             // $pdf->ezTable($pdf_tab[$e][$et]);
             echo '<pre>';
             $anz_kkk = count($pdf_tab[$e][$et]);
             $cols_arr = array();
             $cols_arr = array_keys($pdf_tab[$e][$et][$anz_kkk]);
             // print_r($cols_arr);
             // die();
             $cols = array();
             $colsnumkeys_arr = array_keys($cols_num);
             $cols_num1['MONAT'] = 'Month';
             // $cols_num1['LEER'] = 'Empty (J/N)';
             // $cols_num1['WM_S'] = 'WMS';
             // $cols_num1['MV_NAME'] = 'Tenant';
             $cols_num1['80001'] = $cols_num['80001']['TXT'];
             $cols_num1['FIX'] = $cols_num['FIX']['TXT'];
             $cols_num1['NK'] = $cols_num['NK']['TXT'];
             foreach ($cols_arr as $kl => $vl) {
                 if (is_numeric($vl)) {
                     if (in_array($vl, $colsnumkeys_arr)) {
                         if ($vl != '80001' && $vl != '5020') {
                             $cols_num1[$vl] = $cols_num[$vl]['TXT'];
                         }
                     } else {
                         // $cols_num1[$vl] = $vl;
                     }
                 } else {
                     $cols_alpha[$vl] = $vl;
                 }
             }
             $cols_num1['5020'] = $cols_num['5020']['TXT'];
             // die('BLA');
             // $cols_num[5020] = 'TRANSF';
             // $cols_num[80001] = 'WM';
             // unset($cols['NT']);
             /* Sanel */
             $anz_s = count($pdf_tab[$e][$et]);
             for ($s = 0; $s < $anz_s; $s++) {
                 $s_keys = array_keys($pdf_tab[$e][$et][$s]);
             }
             // print_r($pdf_tab[$e][$et]);
             /*
              * if($et=='510'){
              * print_r($pdf_tab[$e][$et]);
              * die();
              * }
              */
             // $pdf->ezTable($pdf_tab[$e][$et], $cols_alpha, EINNAHMEN_REPORT." $jahr - $weg->haus_strasse $weg->haus_nummer in $weg->haus_plz $weg->haus_stadt" , array('showHeadings'=>1,'shaded'=>1, 'titleFontSize' => 8, 'fontSize' => 7, 'xPos'=>40,'xOrientation'=>'right', 'width'=>760,'cols'=>array('TXT'=>array('justification'=>'right'), 'IHR'=>array('justification'=>'right'), 'HV'=>array('justification'=>'right'))));
             // print_r($pdf_tab[$e][$et]);
             // die();
             $pdf->ezTable($pdf_tab[$e][$et], $cols_num1, EINNAHMEN_REPORT . " {$jahr}  - {$weg->haus_strasse} {$weg->haus_nummer} in {$weg->haus_plz} {$weg->haus_stadt}", array('showHeadings' => 1, 'shaded' => 1, 'titleFontSize' => 10, 'fontSize' => 9, 'xPos' => 35, 'xOrientation' => 'right', 'width' => 760, 'cols' => array('TXT' => array('justification' => 'right'), 'IHR' => array('justification' => 'right'), 'HV' => array('justification' => 'right'))));
             $genutzte_ktos = array_keys($cols_num1);
             // print_r($genutzte_ktos);
             // die();
             $pdf->ezSetDy(-15);
             // abstand
             foreach ($genutzte_ktos as $keyk) {
                 if ($keyk != 'MONAT' && $keyk != 'LEER' && $keyk != 'MV_NAME') {
                     $text_k = $cols_num[$keyk]['TXT'];
                     $text_k1 = $cols_num[$keyk]['TXT1'];
                     $pdf->ezText("<b>{$text_k}</b>: {$text_k1}", 9);
                 }
             }
             $genutzte_ktos = array();
             $cols_num1 = array();
             $sum_keys = array_keys($pdf_tab[$e][$et]);
             $anz_etz = count($sum_keys);
             $last_z = $sum_keys[$anz_etz - 1];
             // echo $last_z;
             $pdf->ezSetDy(-30);
             // abstand
             // echo '<pre>';
             // $pdf->ezText(EINNAHMEN_REPORT." $jahr", 15);
             // $pdf->ezSetDy(-20); //abstand
             // print_r($pdf_tab[$e][$et]);
             /* Legende */
             $anz_zeilen_et = count($pdf_tab[$e][$et]);
             // echo $anz_zeilen_et;
             // print_r($pdf_tab[$e][$et][$last_z]);
             // die();
             // $pdf->ezTable($pdf_tab[$e][$et][$last_z]);
             $anz_elem = count($pdf_tab[$e][$et][$last_z]);
             $et_tab = array();
             $et_za = 0;
             $kosten_ko = array();
             $ko_z = 0;
             foreach ($pdf_tab[$e][$et][$last_z] as $el_key => $el_value) {
                 // echo "$el_key $el_value<br>";
                 // $pdf->ezText("<b>$el_key:</b> $el_value", 9);
                 if ($el_key == 'FIX') {
                     $bez = 'Fixed owner costs (Mng. Fee and maintenance fund)';
                     $kosten_ko[$ko_z]['BEZ'] = $bez;
                     $kosten_ko[$ko_z]['BETRAG'] = nummer_komma2punkt(nummer_punkt2komma($el_value));
                     $ko_z++;
                 }
                 if ($el_key == 'KM_S') {
                     $el_key = 'Net rent only (debit side)';
                 }
                 if ($el_key == 'NK') {
                     $bez = 'Running Service Costs (debit side)';
                     $kosten_ko[$ko_z]['BEZ'] = $bez;
                     $kosten_ko[$ko_z]['BETRAG'] = nummer_komma2punkt(nummer_punkt2komma($el_value * -1));
                     $ko_z++;
                 }
                 if ($el_key == 'WM_S') {
                     $el_key = 'Total Rent Income (Brutto) (debit side)';
                 }
                 if (is_numeric($el_key)) {
                     if ($el_key == '80001') {
                         $bez = "{$el_key} - Total Rent Income (Brutto) - All payments by tenant, incl. Running service costs";
                     }
                     if ($el_key == '5020') {
                         $bez = "{$el_key} - Transfer to owner";
                         // $el_value = $el_value*-1;
                     }
                     if ($el_key == '5021') {
                         $bez = "{$el_key} - Housing benefit";
                     }
                     if ($el_key == '1023') {
                         $bez = "{$el_key} - Costs/repairs apartment";
                     }
                     if ($el_key == '5101') {
                         $bez = "{$el_key} - Tenant security deposit";
                     }
                     if ($el_key == '5500') {
                         $bez = "{$el_key} - Broker fee";
                     }
                     if ($el_key == '5600') {
                         $bez = "{$el_key} - Tenant evacuation";
                     }
                     if ($el_key == '6000') {
                         $bez = "{$el_key} - Housing benefit";
                     }
                     if ($el_key == '6010') {
                         $bez = "{$el_key} - Heating costs";
                     }
                     if ($el_key == '6020') {
                         $bez = "{$el_key} - Running costs";
                     }
                     if ($el_key == '6030') {
                         $bez = "{$el_key} - Reserve";
                     }
                     if ($el_key == '6060') {
                         $bez = "{$el_key} - Management fee";
                     }
                     if (empty($bez)) {
                         $bez = $el_key;
                     }
                     // $kosten_ko[$ko_z]['BEZ'] = $el_key;
                     if ($el_value != 0 && in_array($el_key, $kokonten)) {
                         $kosten_ko[$ko_z]['BEZ'] = $bez;
                         $kosten_ko[$ko_z]['BETRAG'] = nummer_komma2punkt(nummer_punkt2komma($el_value));
                         $bez = '';
                         $ko_z++;
                     }
                 }
                 if ($el_key != 'MONAT' && $el_key != 'IHR' && $el_key != 'NK' && $el_key != 'HV' && $el_key != 'FIX' && $el_key != 'MWST' && !is_numeric($el_key) && $el_key != 'KM_SA' && $el_key != 'ET' && $el_key != 'EINHEIT') {
                     $et_tab[$et_za]['BEZ'] = $el_key;
                     $et_tab[$et_za]['BETRAG'] = nummer_komma2punkt(nummer_punkt2komma($el_value));
                     // $pdf->ezTable($pdf_tab[$e][$et][$last_z]);
                     $et_za++;
                 }
             }
             ksort($et_tab);
             arsort($kosten_ko);
             $et_tab1 = array_sortByIndex($et_tab, 'BETRAG', 'SORT_DESC');
             $kosten_ko1 = array_sortByIndex($kosten_ko, 'BETRAG', 'SORT_DESC');
             $et_tab1[]['BEZ'] = ' ';
             // $pdf->ezTable($et_tab);
             // $pdf->ezTable($kosten_ko);
             $anz_oo = count($kosten_ko1);
             $amount_et = 0;
             for ($ooo = 0; $ooo < $anz_oo; $ooo++) {
                 $amount_et += $kosten_ko1[$ooo]['BETRAG'];
             }
             $kosten_ko1[$anz_oo]['BEZ'] = "<b>Balance</b>";
             $kosten_ko1[$anz_oo]['BETRAG'] = "<b>" . nummer_komma2punkt(nummer_punkt2komma($amount_et)) . "</b>";
             $et_tab_new = array_merge($et_tab1, $kosten_ko1);
             echo '<pre>';
             // print_r($kosten_ko1);
             // die();
             $cols_et = array('BEZ' => 'Description', 'BETRAG' => 'Amount');
             // $pdf->ezTable($et_tab_new, $cols_et, EINNAHMEN_REPORT." $jahr - $oo->objekt_kurzname" , array('showHeadings'=>1,'shaded'=>1, 'titleFontSize' => 9, 'fontSize' => 8, 'xPos'=>50,'xOrientation'=>'right', 'width'=>500, 'cols'=>array('BETRAG'=>array('justification'=>'right', 'width'=>100)) ));
             // $pdf->ezTable($et_tab_new);
             // die();
             if (is_array($sum_konten)) {
                 $gki = new geldkonto_info();
                 $gki->geld_konto_ermitteln('OBJEKT', $objekt_id);
                 if ($gki->geldkonto_id) {
                     $kr = new kontenrahmen();
                     $kr_id = $kr->get_kontenrahmen('GELDKONTO', $gki->geldkonto_id);
                     $string = '';
                     $bb_keys = array_keys($sum_konten);
                     for ($bb = 0; $bb < count($sum_konten); $bb++) {
                         $kto = $bb_keys[$bb];
                         $kr->konto_informationen2($kto, $kr_id);
                         $string .= "{$kto} - {$kr->konto_bezeichnung}\n";
                         // $betrag = $pdf_tab[$e][$et][$anz_zeilen_et-1][$kto];
                         // $pdf->ezText("<b>$string - $betrag</b>", 9);
                         unset($cols[$kto]);
                     }
                     // $pdf->ezSetDy(-20); //abstand
                     // $pdf->ezText("<b>$string</b>", 9);
                 }
             }
             $pdf_last[$et_id] = $pdf_tab[$e][$et][$zeile + 1];
             $sum_konten = array();
             // $pdf->ezTable($pdf_tab[$e][$et]);
             // if(isset($et_id)){
             $pdf->ezNewPage();
             // $pdf->eztext("Seite Einheit $e/$anz_e $et/$anz_et",20);
             // }
             $sum_ihr = 0;
             $sum_hv = 0;
             $sum_fix = 0;
             $sum_km_ant = 0;
             $sum_km_s = 0;
             $sum_wm_s = 0;
             $sum_nk = 0;
             $sum_mwst = 0;
         }
         // end for ET
         // echo "<hr>";
         // print_r($pdf_tab[$e]);
         // die();
         // $pdf->ezTable($pdf_tab[$e]);
     }
     // end for Einheit
     // $pdf->ezTable($pdf_last);
     unset($cols['M_ERG']);
     unset($cols['TXT']);
     unset($cols['MV_NAME']);
     unset($cols['KOS_BEZ']);
     unset($cols['NT']);
     unset($cols['MONAT']);
     $cols['EINHEIT'] = 'EINHEIT';
     $cols['ET'] = 'ET';
     /* Legende */
     if (isset($b_konten_arr) && is_array($b_konten_arr)) {
         // echo '<pre>';
         // print_r($b_konten_arr);
         // die();
         $b_konten_arr1 = array_unique($b_konten_arr);
         // echo '<pre>';
         // print_r($b_konten_arr1);
         // die();
         $gki = new geldkonto_info();
         $gki->geld_konto_ermitteln('OBJEKT', $objekt_id);
         $string = '';
         if ($gki->geldkonto_id) {
             $kr = new kontenrahmen();
             $kr_id = $kr->get_kontenrahmen('GELDKONTO', $gki->geldkonto_id);
             // echo "KR: $kr_id | $gki->geldkonto_id";
             // die();
             $bb_keys = array_keys($b_konten_arr1);
             for ($bb = 0; $bb < count($b_konten_arr1); $bb++) {
                 $ktokey = $bb_keys[$bb];
                 $kto = $b_konten_arr1[$ktokey];
                 $cols[$kto] = $kto;
                 $kr->konto_informationen2($kto, $kr_id);
                 $string .= "<b>{$kto}</b> - {$kr->konto_bezeichnung}, ";
             }
             $anz_sumk = count($pdf_last);
             $sum_80001 = 0;
             $sum_5020 = 0;
             $id_keys = array_keys($pdf_last);
             for ($x = 0; $x < $anz_sumk; $x++) {
                 $key = $id_keys[$x];
                 $sum_80001 += $pdf_last[$key]['80001'];
                 $sum_5020 += $pdf_last[$key]['5020'];
             }
             $pdf_last[$anz_sumk + 1000]['ET'] = 'SUMME';
             $pdf_last[$anz_sumk + 1000]['80001'] = $sum_80001;
             $pdf_last[$anz_sumk + 1000]['5020'] = $sum_5020;
             // echo '<pre>';
             // print_r($pdf_last);
             // die();
             unset($cols['MONAT']);
             unset($cols['IHR']);
             unset($cols['HV']);
             unset($cols['MWST']);
             // $pdf->ezTable($pdf_last, $cols, UEBERSICHT." $jahr - $oo->objekt_kurzname" , array('showHeadings'=>1,'shaded'=>1, 'titleFontSize' => 7, 'fontSize' => 5, 'xPos'=>5,'xOrientation'=>'right', 'width'=>600));
             // $pdf->ezSetDy(-20); //abstand
             // $pdf->ezText("$string", 9);
         }
     }
     // print_r($pdf_tab);
     // die();
 }
Пример #6
0
 function mvs_und_leer_jahr_zeitraum($einheit_id, $von, $jahr)
 {
     $abfrage = "SELECT 'MIETVERTRAG' AS KOS_TYP, MIETVERTRAG_ID AS KOS_ID ,`MIETVERTRAG_VON`,`MIETVERTRAG_BIS`,`EINHEIT_ID`,\nIF(DATE_FORMAT(MIETVERTRAG_VON, '%Y') < '{$jahr}', '{$von}', MIETVERTRAG_VON) AS BERECHNUNG_VON,\nIF(DATE_FORMAT(MIETVERTRAG_BIS, '%Y') = '{$jahr}', MIETVERTRAG_BIS, '{$jahr}-12-31') AS BERECHNUNG_BIS,\nDATEDIFF(IF(DATE_FORMAT(MIETVERTRAG_BIS, '%Y') = '{$jahr}', MIETVERTRAG_BIS, '{$jahr}-12-31'), IF(DATE_FORMAT(MIETVERTRAG_VON, '%Y') < '{$jahr}', '{$von}', MIETVERTRAG_VON))+1 AS TAGE FROM `MIETVERTRAG` WHERE `MIETVERTRAG_AKTUELL`='1' \n&& DATE_FORMAT(MIETVERTRAG_VON,'%Y') <= '{$jahr}' && (DATE_FORMAT(MIETVERTRAG_BIS,'%Y') >='{$jahr}' OR DATE_FORMAT(MIETVERTRAG_BIS,'%Y') ='0000') && EINHEIT_ID='{$einheit_id}' ORDER BY MIETVERTRAG_VON ASC";
     $result = mysql_query($abfrage) or die(mysql_error());
     $numrows = mysql_numrows($result);
     /* Wenn �berhaupt vermietet, sonst Leerstand ganzes Jahr, siehe unten nach ELSE */
     if ($numrows) {
         while ($row = mysql_fetch_assoc($result)) {
             $my_array[] = $row;
         }
         $anzahl_zeilen = count($my_array);
         $tage = 0;
         for ($a = 0; $a < $anzahl_zeilen; $a++) {
             $tage = $tage + $my_array[$a]['TAGE'];
         }
         $tage_im_jahr = $this->tage_im_jahr($jahr);
         /* Voll vermietet */
         if ($tage == $tage_im_jahr) {
             /* Voll mermietet */
             // echo "GANZ VERMIETET = $tage == $tage_im_jahr<br>";
             return $my_array;
         }
         /* Nicht ganzes Jahr vermietet */
         if ($tage < $tage_im_jahr) {
             // echo "TEILWEISE VERMIETET = $tage <> $tage_im_jahr<br>";
             $summe_tage = 0;
             for ($a = 0; $a < $anzahl_zeilen; $a++) {
                 $berechnung_von = $my_array[$a]['BERECHNUNG_VON'];
                 $berechnung_bis = $my_array[$a]['BERECHNUNG_BIS'];
                 /* Wenn etwas am Anfang des Jahres fehlt */
                 /*
                  * if($a==0){
                  * $diff_zwischen_1_1 = $this->diff_in_tagen("$jahr-01-01", $berechnung_von);
                  * if($diff_zwischen_1_1>0){
                  * #echo "AM ANFANG FEHLEN $diff_zwischen_1_1 ($jahr-01-01 bis $berechnung_von)<br>";
                  * $berechnung_von_a = $this->datum_minus_tage($berechnung_von,1);
                  * $my_array_neu[] = array('KOS_TYP'=>'Leerstand','KOS_ID'=>'Leerstand','BERECHNUNG_VON'=>"$jahr-01-01",'BERECHNUNG_BIS'=>"$berechnung_von_a", 'TAGE'=>$diff_zwischen_1_1);
                  * $summe_tage += $diff_zwischen_1_1;
                  * }else{
                  * #echo "AM ANFANG FEHLEN KEINE TAGE<br>";
                  * }
                  * }
                  */
                 /* Fehlzeiten / leerst�nde zwischen den vertr�gen */
                 /* In allen Zeilen ausser letzte */
                 if ($a < $anzahl_zeilen - 1) {
                     $berechnung_von_next = $my_array[$a + 1]['BERECHNUNG_VON'];
                     $diff_zw_mvs = $this->diff_in_tagen($berechnung_bis, $berechnung_von_next) - 1;
                     if ($diff_zw_mvs > 1) {
                         // echo "ES FEHLEN $berechnung_bis $berechnung_von_next $diff_zw_mvs<br>";
                         $berechnung_bis = $this->datum_plus_tage($berechnung_bis, 1);
                         $berechnung_von_next = $this->datum_minus_tage($berechnung_von_next, 1);
                         $my_array_neu[] = array('KOS_TYP' => 'Leerstand', 'KOS_ID' => 'Leerstand', 'BERECHNUNG_VON' => $berechnung_bis, 'BERECHNUNG_BIS' => $berechnung_von_next, 'TAGE' => $diff_zw_mvs);
                         $summe_tage += $diff_zw_mvs;
                     }
                 }
                 $berechnung_von = $my_array[$a]['BERECHNUNG_VON'];
                 $berechnung_bis = $my_array[$a]['BERECHNUNG_BIS'];
                 $tage_vermietet = $my_array[$a]['TAGE'];
                 $mv_id = $my_array[$a]['KOS_ID'];
                 $berechnung_von_a = date_mysql2german($berechnung_von);
                 $berechnung_bis_a = date_mysql2german($berechnung_bis);
                 // echo "VERMIETET $berechnung_von $berechnung_bis_a $tage_vermietet<br>";
                 $my_array_neu[] = array('KOS_TYP' => 'MIETVERTRAG', 'KOS_ID' => $mv_id, 'BERECHNUNG_VON' => $berechnung_von, 'BERECHNUNG_BIS' => $berechnung_bis, 'TAGE' => $tage_vermietet);
                 $summe_tage += $tage_vermietet;
                 /* Wenn etwas am Ende des Jahres fehlt */
                 if ($a == $anzahl_zeilen - 1) {
                     $diff_zwischen_12_31 = $this->diff_in_tagen("{$berechnung_bis}", "{$jahr}-12-31");
                     if ($diff_zwischen_12_31 > 0) {
                         $summe_tage += $diff_zwischen_12_31;
                         $berechnung_bis_a = $this->datum_plus_tage($berechnung_bis, 1);
                         // echo "AM ENDE FEHLEN $diff_zwischen_12_31 ($berechnung_bis_a bis $jahr-12-31)<br>";
                         $my_array_neu[] = array('KOS_TYP' => 'Leerstand', 'KOS_ID' => 'Leerstand', 'BERECHNUNG_VON' => $berechnung_bis_a, 'BERECHNUNG_BIS' => "{$jahr}-12-31", 'TAGE' => $diff_zwischen_12_31);
                     } else {
                         // echo "AM ENDE FEHLEN KEINE TAGE<br>";
                     }
                 }
             }
             // end for
             // echo "<b>SUMME TAGE $summe_tage</b><br>";
             $arr_sortiert = array_sortByIndex($my_array_neu, 'BERECHNUNG_VON');
             unset($my_array_neu);
             return $arr_sortiert;
         } else {
             echo "ERROR BERLUSSIMO L501D (TAGE>TAGE IM JAHR) E:{$einheit_id} {$jahr} {$tage}<{$tage_im_jahr}<br>";
             echo "Wahrscheinlich 2 Mietverträge zur gleichen Zeit, bitte Anfangsdatum der mietvertraege der Einheit {$einheit_id} prüfen";
             die;
         }
     } else {
         // echo "Leerstand ganzes jahr";
         $tage_im_jahr = $this->tage_im_jahr($jahr);
         $my_array_neu[] = array('KOS_TYP' => 'Leerstand', 'KOS_ID' => 'Leerstand', 'BERECHNUNG_VON' => "{$jahr}-01-01", 'BERECHNUNG_BIS' => "{$jahr}-12-31", 'TAGE' => $tage_im_jahr);
         return $my_array_neu;
     }
 }
Пример #7
0
 function rechnung_schreiben_positionen_wahl_ALT($kostentraeger_typ, $kostentraeger_id, $positionen, $aussteller_typ, $aussteller_id)
 {
     // echo "<pre>";
     // print_r($positionen);
     // echo "</pre>";
     $form = new mietkonto();
     $form->erstelle_formular("Rechnung aus Pool zusammenstellen", NULL);
     $js_action = 'onblur="javascript:rechnung_pool_neuberechnen(this.form)" onchange="javascript:rechnung_pool_neuberechnen(this.form)" onfocus="javascript:rechnung_pool_neuberechnen(this.form)" onmouseover="javascript:rechnung_pool_neuberechnen(this.form)"';
     $objekt_info = new objekt();
     if ($kostentraeger_typ == 'Objekt') {
         $objekt_info->get_objekt_eigentuemer_partner($kostentraeger_id);
         $rechnungs_empfaenger_id = $objekt_info->objekt_eigentuemer_partner_id;
     }
     if ($kostentraeger_typ == 'Einheit') {
         $this->get_empfaenger_infos($kostentraeger_typ, $kostentraeger_id);
         $rechnungs_empfaenger_typ = $this->rechnungs_empfaenger_typ;
         $rechnungs_empfaenger_id = $this->rechnungs_empfaenger_id;
     }
     if ($kostentraeger_typ == 'Lager') {
         $rechnungs_empfaenger_id = $kostentraeger_id;
     }
     if ($kostentraeger_typ == 'Partner') {
         $rechnungs_empfaenger_id = $kostentraeger_id;
     }
     /*
      * $form->hidden_feld("Empfaenger", "$rechnungs_empfaenger_id");
      * $form->hidden_feld("empfaenger_typ", "Partner");
      * $form->hidden_feld("Aussteller", "$aussteller_id");
      * $form->hidden_feld("aussteller_typ", $aussteller_typ);
      */
     /*
      * echo "<pre>";
      * print_r($positionen);
      * echo "</pre>";
      */
     $positionen = array_sortByIndex($positionen, 'BELEG_NR');
     /*
      * echo "<pre>";
      * print_r($positionen);
      * echo "</pre>";
      */
     // echo "<h1>$kostentraeger_typ, $kostentraeger_id, $aussteller_typ, $aussteller_id</h1>";
     $this->rechnungs_kopf_zusammenstellung($kostentraeger_typ, $kostentraeger_id, $aussteller_typ, $aussteller_id);
     echo "<table class=rechnungen>";
     echo "<tr><td colspan=3>";
     $faellig_am = date("Y-m-t");
     $faellig_am = date_mysql2german($faellig_am);
     $datum_feld = 'document.getElementById("rechnungsdatum").value';
     $formular = new formular();
     $js_datum = "onchange='check_datum({$datum_feld})'";
     $formular->text_feld('Rechnungsdatum:', 'rechnungsdatum', '', '20', 'rechnungsdatum', $js_datum);
     // $form->text_feld_js("Rechnungsdatum", "rechnungsdatum", "", "20", "rechnungsdatum", '');
     $datum_feld = 'document.getElementById("faellig_am").value';
     $js_datum = "onchange='check_datum({$datum_feld})'";
     $formular->text_feld('Faellig am:', 'faellig_am', "{$faellig_am}", '20', 'faellig_am', $js_datum);
     // $form->text_feld_js("Faellig am:", "faellig_am", "$faellig_am", "20", "faellig_am", $js_action);
     // $form->text_feld_js("Skonto in %:", "skonto", "0", "5", "skonto_feld", "$js_action");
     $form->text_feld_js("Skonto in %:", "skonto", "0", "5", "skonto_feld", "");
     echo "</td><td colspan=6>";
     echo "</td></tr>";
     // onMouseover=\"BoxenAktivieren(this);
     echo "<tr class=feldernamen><td width=\"30px\"><input type=\"checkbox\" onClick=\"this.value=check(this.form.positionen_list)\" {$js_action}>Alle</td><td>Position</td><td>Menge</td><td>Bezeichnung</td><td>Einzelpreis</td><td>Netto</td><td>Rabatt %</td><td>MWSt</td><td>Kostentraeger</td></tr>";
     $rechnungs_summe = 0;
     for ($a = 0; $a < count($positionen); $a++) {
         $zeile = $a + 1;
         $belegnr = $positionen[$a][BELEG_NR];
         $form->hidden_feld("positionen[{$a}][beleg_nr]", "{$belegnr}");
         $position = $positionen[$a][POSITION];
         $form->hidden_feld("positionen[{$a}][position]", "{$position}");
         $artikel_bezeichnung = $this->kontierungsartikel_holen($belegnr, $position);
         $form->hidden_feld("positionen[{$a}][artikel_nr]", "{$this->artikel_nr}");
         $form->hidden_feld("positionen[{$a}][art_lieferant]", "{$this->art_lieferant}");
         $pos_kostentraeger_typ = $positionen[$a][KOSTENTRAEGER_TYP];
         $form->hidden_feld("positionen[{$a}][position_kostentraeger_typ]", "{$pos_kostentraeger_typ}");
         $pos_kostentraeger_id = $positionen[$a][KOSTENTRAEGER_ID];
         $form->hidden_feld("positionen[{$a}][position_kostentraeger_id]", "{$pos_kostentraeger_id}");
         $verwendungs_jahr = $positionen[$a][VERWENDUNGS_JAHR];
         $form->hidden_feld("positionen[{$a}][verwendungs_jahr]", "{$verwendungs_jahr}");
         $kontenrahmen_konto = $positionen[$a][KONTENRAHMEN_KONTO];
         $form->hidden_feld("positionen[{$a}][kontenrahmen_konto]", "{$kontenrahmen_konto}");
         $kostentraeger = $this->kostentraeger_ermitteln($pos_kostentraeger_typ, $pos_kostentraeger_id);
         // echo "$menge $kontenrahmen_konto $kostentraeger_typ $kostentraeger<br>\n";
         $menge = $positionen[$a][MENGE];
         $form->hidden_feld("positionen[{$a}][ursprungs_menge]", "{$menge}");
         $epreis = $positionen[$a][EINZEL_PREIS];
         $gpreis = $positionen[$a][GESAMT_SUMME];
         $rabatt_satz = $positionen[$a][RABATT_SATZ];
         $rechnungs_summe = $rechnungs_summe + $menge * $epreis;
         $mwst_satz_in_prozent = $this->mwst_satz_der_position($belegnr, $position);
         // aus Beleg infos holen //
         $kontierung_id = $positionen[$a][KONTIERUNG_ID];
         $kontierung_dat = $positionen[$a][KONTIERUNG_DAT];
         $form->hidden_feld("positionen[{$a}][kontierung_dat]", "{$kontierung_dat}");
         echo "<tr><td><input type=\"checkbox\" name=uebernehmen[] id=\"positionen_list\" value=\"{$a}\" {$js_action}></td><td>{$zeile}.</td><td>ERF {$belegnr}</td><td>";
         $form->text_feld_js("Menge:", "positionen[{$a}][menge]", "{$menge}", "5", "mengen_feld", $js_action);
         $form->hidden_feld("positionen[{$a}][bezeichnung]", "{$artikel_bezeichnung}");
         echo "</td><td>{$artikel_bezeichnung}</td><td>";
         $form->text_feld_js("Einzelpreis:", "positionen[{$a}][preis]", "{$epreis}", "8", "epreis_feld", $js_action);
         echo "</td><td>";
         $form->text_feld_js("Netto:", "positionen[{$a}][gpreis]", "{$gpreis}", "8", "netto_feld", $js_action);
         echo "</td><td>";
         // $gpreis_brutto = ($gpreis / 100) * (100 + $rechnung->rechnungs_mwst_satz);
         $gpreis_brutto = $gpreis / 100 * (100 + $mwst_satz_in_prozent);
         $gpreis_brutto = $gpreis_brutto * 100 / 100;
         $gpreis_brutto = nummer_punkt2komma($gpreis_brutto);
         // $form->text_feld("Brutto:", "positionen[$a][gpreis_brutto]", "$gpreis_brutto", "5");
         $form->text_feld_js("Rabatt:", "positionen[{$a}][rabatt_satz]", "{$rabatt_satz}", "5", "rabatt_feld", $js_action);
         $form->hidden_feld("positionen[{$a}][pos_mwst]", "{$mwst_satz_in_prozent}");
         echo "</td><td>";
         $form->text_feld_js("Mwst:", "mwst_satz", "{$mwst_satz_in_prozent}", "3", "mwst_feld", $js_action);
         echo "{$mwst_satz}</td><td valign=bottom>{$kostentraeger}</td></tr>";
         $form->hidden_feld("positionen[{$a}][kontierung_id]", "{$kontierung_id}");
     }
     // $form->hidden_feld('option', 'AUTO_RECHNUNG_VORSCHAU');
     $form->hidden_feld("option", "AUTO_RECHNUNG_VORSCHAU");
     $form->hidden_feld('RECHNUNG_EMPFAENGER_TYP', "{$kostentraeger_typ}");
     $form->hidden_feld('RECHNUNG_EMPFAENGER_ID', "{$rechnungs_empfaenger_id}");
     $form->hidden_feld('RECHNUNG_AUSSTELLER_TYP', "{$aussteller_typ}");
     $form->hidden_feld('RECHNUNG_AUSSTELLER_ID', "{$aussteller_id}");
     $form->hidden_feld('RECHNUNG_KOSTENTRAEGER_ID', "{$kostentraeger_id}");
     $form->hidden_feld('RECHNUNG_KOSTENTRAEGER_TYP', "{$kostentraeger_typ}");
     $form->hidden_feld('RECHNUNG_NETTO_BETRAG', NULL);
     $form->hidden_feld('RECHNUNG_BRUTTO_BETRAG', NULL);
     $form->hidden_feld('RECHNUNG_SKONTO_BETRAG', NULL);
     echo "<tr><td colspan=9><hr></td></tr>";
     echo "<tr><td colspan=\"9\">";
     // if($aussteller_typ == 'Partner'){
     $geld_konto_info = new geldkonto_info();
     $geld_konto_info->dropdown_geldkonten($aussteller_typ, $aussteller_id);
     // }else{
     // $form->hidden_feld('geld_konto', '0');
     // }
     echo "</td></tr>";
     echo "<tr><td><input type=\"checkbox\" name=in_rechung_stellen id=\"in_rechung_stellen\"  onclick=\"check_ob_pos_gewaehlt(this)\"><b>Eingabe beenden</b></td><td>";
     echo "<tr><td>";
     $form->text_bereich('Kurzbeschreibung', 'kurzbeschreibung', '', 30, 10);
     echo "<br>";
     // $form->send_button_disabled("senden_pos", "Speichern deaktiviert", "speichern_button2");
     $form->send_button("senden_pos", "Speichern");
     echo "</td></tr>";
     echo "<tr><td colspan=9><hr></td></tr>";
     echo "<tr><td colspan=8 align=right>Netto ausgewählte Positionen</td><td id=\"g_netto_ausgewaehlt\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Brutto ausgewählte Positionen</td><td id=\"g_brutto_ausgewaehlt\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Skontonachlass</td><td id=\"g_skonto_nachlass\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Skontobetrag</td><td id=\"g_skonto_betrag\"></td></tr>";
     echo "<tr><td colspan=9><hr></td></tr>";
     echo "<tr><td colspan=8 align=right>Gesamt Netto errechnet</td><td id=\"g_netto_errechnet\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Gesamt Brutto errechnet</td><td id=\"g_brutto_errechnet\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Durchschnittsrabatt im Pool</td><td id=\"durchschnitt_rabatt\"></td></tr>";
     echo "</table>";
     $form->ende_formular();
 }
Пример #8
0
 function list_plan($plan_id)
 {
     $f = new formular();
     $f->erstelle_formular("Terminliste Wartungen", NULL);
     $geraete_arr = $this->alle_geraete_in_arr($plan_id);
     $anz = count($geraete_arr);
     // print_r($geraete_arr);
     if ($anz > 0) {
         $this->get_wplan_info($plan_id);
         // $this->intervall; int
         // $this->intervall_period /day month year
         for ($a = 0; $a < $anz; $a++) {
             $geraet_id = $geraete_arr[$a]['GERAETE_ID'];
             $this->letzte_wartung_infos($plan_id, $geraet_id);
             $kos_typ = $geraete_arr[$a]['KOSTENTRAEGER_TYP'];
             $kos_id = $geraete_arr[$a]['KOSTENTRAEGER_ID'];
             $r = new rechnung();
             $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
             $ger_bez = $geraete_arr[$a]['BEZEICHNUNG'];
             $this->termin_check_geraet($plan_id, $geraet_id);
             if ($this->termin_g) {
                 $wartungstermine[$a][GERAETE_ID] = $geraet_id;
                 $wartungstermine[$a][GER_BEZ] = $ger_bez;
                 $wartungstermine[$a][KOS_BEZ] = $kos_bez;
                 $wartungstermine[$a][L_WARTUNG] = $this->wartungsdatum;
                 $wartungstermine[$a][F_WARTUNG] = $this->n_wartung;
                 $wartungstermine[$a][TERMIN] = $this->termin_g;
                 $wartungstermine[$a][MITARBEITER] = $this->termin_von;
             } else {
                 $wartungsplan[$a][GERAETE_ID] = $geraet_id;
                 $wartungsplan[$a][GER_BEZ] = $ger_bez;
                 $wartungsplan[$a][KOS_BEZ] = $kos_bez;
                 $wartungsplan[$a][L_WARTUNG] = $this->wartungsdatum;
                 $wartungsplan[$a][F_WARTUNG] = $this->n_wartung;
             }
         }
         $termine = array_sortByIndex($wartungstermine, 'TERMIN', SORT_ASC);
         $anzahl_termine = count($termine);
         echo "<table>";
         echo "<tr class=\"feldernamen\"><td>{$this->plan_bez} TERMINE ({$anzahl_termine})</td></tr>";
         echo "</table>";
         if ($anzahl_termine > 0) {
             echo "<table class=\"sortable\">";
             echo "<tr><th>Gerät</th><th>Lage</th><th>Letzte Wartung</th><th>Wartung fällig</th><th>TERMIN</th><th>Mietarbeiter</th></tr>";
             for ($a = 0; $a < $anzahl_termine; $a++) {
                 $geraete_id = $termine[$a][GERAETE_ID];
                 $kos_bez = $termine[$a][KOS_BEZ];
                 $l_wartung = date_mysql2german($termine[$a][L_WARTUNG]);
                 $f_wartung = date_mysql2german($termine[$a][F_WARTUNG]);
                 $termin = $termine[$a][TERMIN];
                 $mitarbeiter = $termine[$a][MITARBEITER];
                 $ger_bez = $termine[$a][GER_BEZ];
                 echo "<tr><td>{$ger_bez}</td><td>{$kos_bez}</td><td>{$l_wartung}</td><td>{$f_wartung}</td><td>{$termin}</td><td>{$mitarbeiter}</td></tr>";
             }
             echo "</table>";
         } else {
             echo "<table>";
             echo "<tr><th>Keine Termine</th></tr>";
             echo "</table>";
         }
         unset($termine);
         $wartungsplan_s = array_sortByIndex($wartungsplan, 'F_WARTUNG', SORT_ASC);
         echo "<br><br>";
         // print_r($wartungsplan_s);
         $anzahl_geraete = count($wartungsplan_s);
         echo "<table >";
         echo "<tr class=\"feldernamen\"><td>{$this->plan_bez} GERÄTELISTE ({$anzahl_geraete})</td></tr>";
         echo "</table>";
         if ($anzahl_geraete > 0) {
             echo "<table class=\"sortable\">";
             echo "<tr><th>Gerät</th><th>Lage</th><th>Letzte Wartung</th><th>Wartung fällig</th><th>TERMIN</th><th>Mietarbeiter</th></tr>";
             for ($a = 0; $a < $anzahl_geraete; $a++) {
                 $geraete_id = $wartungsplan_s[$a][GERAETE_ID];
                 $kos_bez = $wartungsplan_s[$a][KOS_BEZ];
                 $l_wartung = date_mysql2german($wartungsplan_s[$a][L_WARTUNG]);
                 $f_wartung = date_mysql2german($wartungsplan_s[$a][F_WARTUNG]);
                 $ger_bez = $wartungsplan_s[$a][GER_BEZ];
                 $link_termin_neu = "<a href=\"?daten=wartung&option=termin_neu&plan_id={$plan_id}&geraete_id={$geraete_id}\">Termin vereinbaren</a>";
                 echo "<tr><td>{$ger_bez}</td><td>{$kos_bez}</td><td>{$l_wartung}</td><td>{$f_wartung}</td><td>nicht vereinbart</td><td>{$link_termin_neu}</td></tr>";
             }
             echo "</table>";
         } else {
             echo "<table>";
             echo "<tr><th>Keine Geräte</th></tr>";
             echo "</table>";
         }
         $f->ende_formular();
     } else {
         echo "Keine Geräte";
     }
 }
Пример #9
0
 function hga_einzeln($p_id = '0')
 {
     $this->get_hga_profil_infos($p_id);
     /* Tage im Jahr */
     $jahr = $this->p_jahr;
     $bk = new bk();
     if (empty($this->p_von) or empty($this->p_bis)) {
         $tj = $bk->tage_im_jahr($jahr);
     } else {
         $bk = new bk();
         $tj = $bk->diff_in_tagen($this->p_von, $this->p_bis) + 1;
     }
     /* Art = Ausgaben, Einnahmen, Mittelverwendung */
     $_umlage_ktos = $this->get_hgkonten_arr($p_id, 'Ausgaben/Einnahmen', false);
     $_umlage_ktos_sort = array_sortByIndex($_umlage_ktos, 'GRUPPE', 'DESC');
     $_umlage_ktos = $_umlage_ktos_sort;
     unset($_umlage_ktos_sort);
     $anz_k = count($_umlage_ktos);
     if (!$anz_k) {
         die('Keine Kosten im Profil. Bitte Kostenkonten hinzufügen');
     }
     $znr = 0;
     for ($a = 0; $a < $anz_k; $a++) {
         $konto = $_umlage_ktos[$a]['KONTO'];
         $gruppe = $_umlage_ktos[$a]['GRUPPE'];
         $betraege_arr[] = $this->get_betraege_arr($p_id, $konto);
     }
     $einheiten_arr = $this->einheiten_weg_tabelle_arr($this->p_objekt_id);
     /* Alle Einheiten durchlaufen um die Eigentümer und Tage zu Sammeln */
     $anz_einheiten = count($einheiten_arr);
     for ($b = 0; $b < $anz_einheiten; $b++) {
         $einheit_id = $einheiten_arr[$b]['EINHEIT_ID'];
         $eig_arr = $this->get_eigentuemer_arr_jahr($einheit_id, $this->p_jahr);
         // print_r($eig_arr);
         $anz_eig = count($eig_arr);
         /* Eigentuemer untereinander */
         for ($c = 0; $c < $anz_eig; $c++) {
             $eig_arr_1 = $eig_arr[$c];
             $einheiten_arr_eig[] = $eig_arr_1;
         }
     }
     unset($einheiten_arr);
     $anz_eig = count($einheiten_arr_eig);
     /* Kontenrahmen vom Geldkonto holen */
     $k = new kontenrahmen();
     $kontenrahmen_id = $k->get_kontenrahmen('Geldkonto', $this->p_gk_id);
     /**
      * **********PROGRAMMABBRUCH OHNE KONTENRAHMEN**************
      */
     if (!$kontenrahmen_id) {
         die('Kontenrahmen zum Geldkonto fehlt, bitte zuweisen!');
     }
     /* Jeden Eigentuemer für alle Konten durchlaufen */
     $anz_b = count($betraege_arr);
     // Anzahl Konten
     for ($a = 0; $a < $anz_eig; $a++) {
         $eigentuemer_id = $einheiten_arr_eig[$a]['ID'];
         $tab_arr[$a]['EIG_ID'] = $eigentuemer_id;
         $tab_arr[$a]['EINHEIT_ID'] = $einheiten_arr_eig[$a]['EINHEIT_ID'];
         $tab_arr[$a]['VON'] = $einheiten_arr_eig[$a]['VON'];
         $tab_arr[$a]['BIS'] = $einheiten_arr_eig[$a]['BIS'];
         $tab_arr[$a]['TAGE'] = $einheiten_arr_eig[$a]['TAGE'];
         /* Jedes Konto durchlaufen, Daten in Tab und für Eigentuemer berechnen */
         $g_summe_aller_kosten = 0;
         $hndl_z = 0;
         for ($b = 0; $b < $anz_b; $b++) {
             $konto = $betraege_arr[$b]['0']['KONTO'];
             $k->konto_informationen2($konto, $kontenrahmen_id);
             $gen_key_id = $betraege_arr[$b]['0']['GEN_KEY_ID'];
             $bk = new bk();
             $bk->get_genkey_infos($gen_key_id);
             $betrag = $betraege_arr[$b]['0']['BETRAG'];
             $betrag = number_format($betrag, 2, '.', '');
             $g_summe_aller_kosten += $betrag;
             $hndl_betrag = $betraege_arr[$b]['0']['HNDL_BETRAG'];
             $kos_typ = $betraege_arr[$b]['0']['KOS_TYP'];
             $kos_id = $betraege_arr[$b]['0']['KOS_ID'];
             $tab_arr[$a]['ZEILEN'][$b]['KONTO'] = $konto;
             $tab_arr[$a]['ZEILEN'][$b]['KONTO_BEZ'] = $k->konto_bezeichnung;
             $tab_arr[$a]['ZEILEN'][$b]['KONTO_ART'] = $k->konto_art_bezeichnung;
             $tab_arr[$a]['ZEILEN'][$b]['GRUPPE'] = $k->konto_gruppen_bezeichnung;
             $tab_arr[$a]['ZEILEN'][$b]['BETRAG'] = nummer_punkt2komma_t($betrag);
             $tab_arr[$a]['ZEILEN'][$b]['HNDL_BETRAG'] = nummer_punkt2komma($hndl_betrag);
             $tab_arr[$a]['ZEILEN'][$b]['ART'] = $betraege_arr[$b]['0']['ART'];
             if ($hndl_betrag == '0.00') {
                 $tab_arr[$a]['ZEILEN'][$b]['BEZ'] = $betraege_arr[$b]['0']['TEXT'];
             } else {
                 $tab_arr[$a]['ZEILEN'][$b]['BEZ'] = $betraege_arr[$b]['0']['TEXT'] . ' *';
             }
             $r = new rechnung();
             $tab_arr[$a]['ZEILEN'][$b]['KOS_BEZ'] = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
             $einheit_id = $tab_arr[$a]['EINHEIT_ID'];
             if (isset($this->berechnen)) {
                 unset($this->berechnen);
             }
             if ($kos_typ == 'Wirtschaftseinheit') {
                 $wi = new wirt_e();
                 /* Hier weiter mt g_value */
                 $g_value = $this->key_daten_gesamt($gen_key_id, 'Wirtschaftseinheit', $kos_id);
                 if (isset($this->{$ein_berr})) {
                     unset($this->ein_berr);
                 }
                 if ($wi->check_einheit_in_we($einheit_id, $kos_id)) {
                     $this->berechnen = '1';
                 } else {
                     $this->berechnen = '0';
                 }
             }
             /* Berechnungsquote ermitteln pro Konto */
             $d = new detail();
             $e = new einheit();
             $e->get_einheit_info($einheit_id);
             if ($gen_key_id == 1) {
                 $e_anteile = nummer_punkt2komma($e->einheit_qm);
             }
             if ($gen_key_id == 2) {
                 $e_anteile = 1;
             }
             if ($gen_key_id == 3) {
                 $e_anteile = $d->finde_detail_inhalt('EINHEIT', $einheit_id, 'WEG-Anteile');
             }
             if ($gen_key_id == 4) {
                 // die('GenKey 4 nicht definiert');
                 $e_anteile = 0.0;
             }
             /* Aufzug nach Prozent */
             if ($gen_key_id == 5) {
                 $e_anteile = $d->finde_detail_inhalt('EINHEIT', $einheit_id, 'WEG-Aufzugprozent');
                 $g_value = 100;
             }
             $tage = $tab_arr[$a]['TAGE'];
             /* Prüfen ob Einheit im Array der Aufteilung */
             $bet = 0;
             $bet_hndl = 0;
             if ($g_value == 0.0 or empty($g_value)) {
                 $tab_arr[$a]['ZEILEN'][$b]['G_KEY_A'] = $g_value . $bk->g_key_name;
                 $tab_arr[$a]['ZEILEN'][$b]['E_KEY_A'] = $e_anteile . $bk->g_key_me . $bk->g_key_me;
             }
             if ($this->berechnen == 1) {
                 $betrag = number_format($betrag, 2, '.', '');
                 $e_anteile = punkt_zahl($e_anteile);
                 $e_anteile_a = number_format($e_anteile, 3, ',', '');
                 $g_value = punkt_zahl($g_value);
                 $g_value_a = number_format($g_value, 3, ',', '');
                 $bet = $betrag * $e_anteile / $g_value * $tage / $tj;
                 $bet = number_format($bet, 2, '.', '');
                 $bet_hndl = $hndl_betrag * $e_anteile / $g_value * $tage / $tj;
                 $tab_arr[$a]['ZEILEN'][$b]['G_KEY_NAME'] = $bk->g_key_name;
                 $tab_arr[$a]['ZEILEN'][$b]['G_KEY_ME'] = $bk->g_key_me;
                 $tab_arr[$a]['ZEILEN'][$b]['G_KEY_A'] = $g_value_a . $bk->g_key_me;
                 $tab_arr[$a]['ZEILEN'][$b]['E_KEY_A'] = $e_anteile_a . $bk->g_key_me;
             } else {
                 $bet = 0.0;
                 $bet_hndl = 0.0;
             }
             /* HNDL Betrag */
             $bet_a = nummer_punkt2komma($bet);
             $bet_hndl_a = nummer_punkt2komma_t($bet_hndl);
             $tab_arr[$a]['ZEILEN'][$b]['E_BETRAG'] = $bet_a;
             $tab_arr[$a]['ZEILEN'][$b]['E_BETRAG_HNDL'] = $bet_hndl_a;
             /* Ergebnistabelle füttern */
             $eigent_id = $tab_arr[$a]['EIG_ID'];
             $tab_erg['BETRAG'][$eigent_id]['BETEILIGUNG'] += nummer_komma2punkt($bet_a);
             if ($bet_hndl != 0.0) {
                 $tab_erg[BETRAG_HNDL][$eigent_id]['BETEILIGUNG'] += nummer_komma2punkt($bet_hndl_a);
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['KONTO'] = $konto;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['KONTO_BEZ'] = $k->konto_bezeichnung;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['KONTO_ART'] = $k->konto_art_bezeichnung;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['GRUPPE'] = $k->konto_gruppen_bezeichnung;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['BETRAG'] = nummer_punkt2komma_t($betrag);
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['BETRAG_HNDL'] = nummer_punkt2komma_t($hndl_betrag);
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['G_KEY_NAME'] = $bk->g_key_name;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['G_KEY_ME'] = $bk->g_key_me;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['E_KEY_A'] = $e_anteile_a . $bk->g_key_me;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['E_BETRAG_HNDL'] = $bet_hndl_a;
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['KOS_BEZ'] = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['BEZ'] = $betraege_arr[$b]['0']['TEXT'] . ' *';
                 $hndl_arr[$eigent_id]['ZEILEN'][$hndl_z]['G_KEY_A'] = $g_value_a . $bk->g_key_me;
                 $hndl_z++;
             }
         }
         // end for Konten $b
     }
     // end for Eigentuemer $a
     $tab_erg['BETRAG']['G_SUMME'] = $g_summe_aller_kosten;
     echo "<hr>";
     $anz = count($tab_arr);
     for ($a = 0; $a < $anz; $a++) {
         $eig_id = $tab_arr[$a]['EIG_ID'];
         $zeilen = $tab_arr[$a]['ZEILEN'];
         $anz_z = count($zeilen);
         echo "<table>";
         echo "<tr><th>EIGENTÜMER {$eig_id}</th></tr>";
         for ($b = 0; $b < $anz_z; $b++) {
             $konto = $zeilen[$b]['KONTO'];
             $bez = $zeilen[$b]['BEZ'];
             $betrag = $zeilen[$b]['BETRAG'];
             $kos_bez = $zeilen[$b]['KOS_BEZ'];
             $e_betrag = $zeilen[$b]['E_BETRAG'];
             echo "<tr><td>{$konto}</td><td>{$bez}</td><td>{$kos_bez}</td><td>{$betrag}</td><td>{$e_betrag}</td></tr>";
             if ($b == $anz_z - 1) {
                 $g_summe = nummer_punkt2komma_t($tab_erg['BETRAG']['G_SUMME']);
                 $g_bet = nummer_punkt2komma_t($tab_erg['BETRAG'][$eig_id]['BETEILIGUNG']);
                 $tab_arr[$a]['ZEILEN'][$b + 1]['BETRAG'] = $g_summe;
                 $tab_arr[$a]['ZEILEN'][$b + 1]['E_BETRAG'] = $g_bet;
                 $tab_arr[$a]['ZEILEN'][$b + 1]['U_BETRAG'] = $g_bet;
             }
         }
         $g_summe = nummer_punkt2komma_t($tab_erg['BETRAG']['G_SUMME']);
         $g_bet = nummer_punkt2komma_t($tab_erg['BETRAG'][$eig_id]['BETEILIGUNG']);
         echo "<tr><td></td><td></td><td></td><td>{$g_summe}</td><td>{$g_bet}</td></tr>";
         echo "</table>";
     }
     /* Gesamtbeteiligung als letzte Zeile hinzufügen */
     $g_summe = nummer_punkt2komma_t($tab_erg['BETRAG']['G_SUMME']);
     $g_bet = nummer_punkt2komma_t($tab_erg['BETRAG'][$eig_id]['BETEILIGUNG']);
     include_once 'classes/class_bpdf.php';
     $pdf = new Cezpdf('a4', 'portrait');
     $bpdf = new b_pdf();
     $bpdf->b_header($pdf, 'Partner', $_SESSION['partner_id'], 'portrait', 'Helvetica.afm', 6);
     $pdf->ezStopPageNumbers();
     // seitennummerirung beenden
     $p = new partners();
     $p->get_partner_info($_SESSION['partner_id']);
     $datum = date("d.m.Y");
     $anz = count($tab_arr);
     for ($a = 0; $a < $anz; $a++) {
         /* Bei jedem Eigentümer, mit neuer Seite anfangen */
         if ($a > 0) {
             $pdf->ezNewPage();
             $pdf->setColor(0, 0, 0);
             $pdf->ezSetDy(-5);
         }
         $eig_id = $tab_arr[$a]['EIG_ID'];
         $this->n_tage = $tab_arr[$a]['TAGE'];
         /* Kopf Anfang */
         $einheit_id = $tab_arr[$a]['EINHEIT_ID'];
         $this->einheit_id = $einheit_id;
         $e = new einheit();
         $e->get_einheit_info($einheit_id);
         $oo = new objekt();
         $anz_einheiten = $oo->anzahl_einheiten_objekt($e->objekt_id);
         $pdf->setColor(0, 0, 0);
         $pdf->setStrokeColor(0, 0, 0);
         $pdf->setLineStyle(0.5);
         $pdf->rectangle(400, 601, 165, 87);
         $this->get_eigentumer_id_infos2($eig_id);
         $this->get_anrede_eigentuemer($eig_id);
         $standard_anschrift = str_replace('<br />', "\n", $this->postanschrift[0]);
         if (!empty($standard_anschrift)) {
             $pdf->ezText("{$standard_anschrift}", 10);
         } else {
             $pdf->ezText("{$this->eig_namen_u_pdf}", 10);
             $pdf->ezSetDy(10);
             $pdf->ezText("{$this->haus_strasse} {$this->haus_nummer}", 10);
             $pdf->ezSetDy(-10);
             $pdf->ezText("{$this->haus_plz} {$this->haus_stadt}", 10);
         }
         $d = new detail();
         $anteile_g = $d->finde_detail_inhalt('OBJEKT', $e->objekt_id, 'Gesamtanteile');
         $pdf->addText(405, 680, 8, "Einheiten:");
         $pdf->addText(465, 680, 8, "{$anz_einheiten}");
         $pdf->addText(405, 670, 8, "Einheit:");
         $pdf->addText(465, 670, 8, "{$e->einheit_kurzname}");
         $pdf->addText(405, 660, 8, "Gesamtanteile:");
         $pdf->addText(465, 660, 8, "{$anteile_g}");
         $this->einheit_anteile = $d->finde_detail_inhalt('EINHEIT', $einheit_id, 'WEG-Anteile');
         $pdf->addText(405, 650, 8, "Ihre MAE:");
         $pdf->addText(465, 650, 8, "{$this->einheit_anteile}");
         $e->einheit_qm_a = nummer_punkt2komma($e->einheit_qm);
         $pdf->addText(405, 640, 8, "Fläche:");
         $pdf->addText(465, 640, 8, "{$e->einheit_qm_a} m²");
         $pdf->addText(405, 630, 8, "Aufzug %:");
         $pdf->addText(465, 630, 8, "{$e->aufzug_prozent_d}");
         $this->eigentuemer_von_d = date_mysql2german($this->eigentuemer_von);
         $this->eigentuemer_bis_d = date_mysql2german($this->eigentuemer_bis);
         if ($this->eigentuemer_bis_d == '00.00.0000') {
             $this->eigentuemer_bis_d = "31.12.{$jahr}";
         }
         $e_jahr_arr = explode(".", $this->eigentuemer_bis_d);
         $e_jahr = $e_jahr_arr[2];
         if ($e_jahr > $jahr) {
             $this->eigentuemer_bis_d = "31.12.{$jahr}";
         }
         $e_ajahr_arr = explode(".", $this->eigentuemer_von_d);
         $e_ajahr = $e_ajahr_arr[2];
         if ($e_ajahr < $jahr) {
             $this->eigentuemer_von_d = "01.01.{$jahr}";
         }
         $pdf->addText(405, 618, 7, "Zeitraum:");
         if ($this->p_von && $this->p_bis) {
             $pdf->addText(465, 618, 7, "{$this->p_von_d} - {$this->p_bis_d}");
         } else {
             $pdf->addText(465, 618, 7, "01.01.{$jahr} - 31.12.{$jahr}");
         }
         $pdf->addText(405, 611, 7, "Nutzungszeitraum: ");
         $pdf->addText(465, 611, 7, "{$this->eigentuemer_von_d} - {$this->eigentuemer_bis_d}");
         $pdf->addText(405, 604, 7, "Tage:");
         $pdf->addText(465, 604, 7, "{$this->n_tage} von {$tj}");
         // $pdf->addText(465,590,7,"$p->partner_ort, $datum");
         $pdf->ezSetY(590);
         $pdf->ezText("{$p->partner_ort}, {$datum}", 10, array('justification' => 'right'));
         $pdf->ezSetY(590);
         $pdf->ezText("{$this->pdf_anrede}", 10);
         $pdf->ezText("beiliegend übersenden wir Ihnen die Hausgeld-Einzelabrechnung zur Jahresabrechnung {$jahr}.", 10);
         $zeilen = array_orderby($tab_arr[$a]['ZEILEN'], 'GRUPPE', SORT_DESC, 'KONTO', SORT_ASC);
         $cols = array('KOS_BEZ' => "KOS", 'KONTO' => "Konto", 'BEZ' => "Kontobezeichnung", 'GRUPPE' => "Kontoart", 'KOS_BEZ' => "Aufteilung", 'BETRAG' => "Gesamt € ", 'G_KEY_A' => "Gesamt", 'E_KEY_A' => "Ihr Anteil", 'E_BETRAG' => "Ihre Beteiligung € ", 'U_BETRAG' => "");
         $pdf->ezTable($zeilen, $cols, "<b>Einnahmen/Ausgaben (*  Kostenkonto beinhaltet haushaltsnahe Dienstleistungen)</b>", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('KONTO' => array('justification' => 'left', 'width' => 32), 'GRUPPE' => array('justification' => 'left', 'width' => 80), 'BETRAG' => array('justification' => 'right', 'width' => 45), 'KOS_BEZ' => array('justification' => 'left', 'width' => 65), 'G_KEY_A' => array('justification' => 'right', 'width' => 65), 'E_KEY_A' => array('justification' => 'right', 'width' => 55), 'E_BETRAG' => array('justification' => 'right', 'width' => 50))));
         // $pdf->ezText("<b> *) Kostenkonto beinhaltet haushaltsnahe Dienstleistungen</b>", 7);
         $g = new geldkonto_info();
         $g->geld_konto_details($this->p_gk_id);
         $this->get_eigentumer_id_infos2($eig_id);
         if (str_replace('-', '', $this->eigentuemer_von) < "{$jahr}" . '0101') {
             $this->eigentuemer_von_t = "{$jahr}-01-01";
         } else {
             $this->eigentuemer_von_t = $this->eigentuemer_von;
         }
         if (str_replace('-', '', $this->eigentuemer_bis) > "{$jahr}" . '1231') {
             $this->eigentuemer_bis_t = "{$jahr}-12-31";
         } else {
             $this->eigentuemer_bis_t = $this->eigentuemer_bis;
         }
         if ($this->eigentuemer_bis == '0000-00-00') {
             $this->eigentuemer_bis_t = "{$jahr}-12-31";
         }
         $g = new geldkonto_info();
         $g->geld_konto_details($this->p_gk_id);
         $geldkonto_id = $this->p_gk_id;
         /* Hier noch 6020 als CONST, in VAR ändern */
         $hg_kosten_soll = $this->hg_tab_soll_ist_einnahmen($this->hg_konto, 'Einheit', $this->einheit_id, $this->eigentuemer_von_t, $this->eigentuemer_bis_t);
         $this->eigentuemer_von_t_a = date_mysql2german($this->eigentuemer_von_t);
         $this->eigentuemer_bis_t_a = date_mysql2german($this->eigentuemer_bis_t);
         $hg_tab[0]['ART'] = "Einnahmen aus Hausgeld für Kosten";
         $hg_tab[0]['ZEITRAUM'] = "{$this->eigentuemer_von_t_a} bis {$this->eigentuemer_bis_t_a}";
         $hg_tab[0]['SOLL'] = '-' . nummer_punkt2komma_t($hg_kosten_soll);
         $hg_ist_summe = $this->get_summe_zahlungen_arr_jahr('Eigentuemer', $eig_id, $jahr, $geldkonto_id, $this->hg_konto);
         if (!$hg_ist_summe) {
             $hg_ist_summe = $this->get_summe_zahlungen_hga('Eigentuemer', $eig_id, $p_id, $this->hg_konto);
         }
         $hg_tab[0]['IST'] = nummer_punkt2komma_t($hg_ist_summe);
         $hg_tab[0]['ERG'] = nummer_punkt2komma_t($hg_ist_summe);
         $hg_kosten_saldo = $hg_ist_summe - $hg_kosten_soll;
         $tab_hg_zahl_kosten[0]['TEXT'] = 'Hausgeldzahlung Anteil für Kosten';
         $tab_hg_zahl_kosten[0]['SUM'] = nummer_punkt2komma($hg_ist_summe);
         $l_z = count($tab_arr2) - 1;
         $hg_kosten_ant = nummer_komma2punkt(strip_tags($tab_arr2[$l_z]['BETRAG_ANT']));
         $hg_kosten_ant = $tab_erg['BETRAG'][$eig_id]['BETEILIGUNG'];
         $hg_kosten_saldo_ist_soll = $hg_ist_summe + $hg_kosten_ant;
         $hg_tab[1]['ART'] = '<b>Zwischenergebnis (ohne Instandhaltungsrücklage und Energieabrechnung)</b>';
         $hg_tab[1]['ERG'] = '<b>' . nummer_punkt2komma($hg_kosten_saldo_ist_soll) . '</b>';
         /* Zwischenergebnis 1 */
         $zw1 = $hg_kosten_saldo_ist_soll;
         /* Heizkostentabelle */
         $hk_kosten_soll = $this->hg_tab_soll_ist_einnahmen($this->hk_konto, 'Einheit', $this->einheit_id, $this->eigentuemer_von_t, $this->eigentuemer_bis_t);
         $hk_tab[0]['ART'] = "Einnahmen aus Hausgeld für Energiekosten";
         $hk_tab[0]['ZEITRAUM'] = "{$this->eigentuemer_von_t_a} bis {$this->eigentuemer_bis_t_a}";
         $hk_tab[0]['SOLL'] = '-' . nummer_punkt2komma($hk_kosten_soll);
         $hk_ist_summe = $this->get_summe_zahlungen_hga('Eigentuemer', $eig_id, $p_id, '6010');
         if (!$hk_ist_summe) {
             $hk_ist_summe = $this->get_summe_zahlungen_arr_jahr('Eigentuemer', $eig_id, $jahr, $geldkonto_id, '6010');
         }
         $tab_hg_zahl_kosten[1]['TEXT'] = 'Hausgeldzahlung Anteil für Energie';
         $tab_hg_zahl_kosten[1]['SUM'] = nummer_punkt2komma($hk_ist_summe);
         $hk_tab[0]['IST'] = nummer_punkt2komma($hk_ist_summe);
         $hk_tab[0]['ERG'] = nummer_punkt2komma($hk_ist_summe);
         $hk_diff_ist_soll = $hk_ist_summe - $hk_kosten_soll + $hg_kosten_saldo_ist_soll;
         $hk_verbrauch_ist = $this->get_summe_hk('Eigentuemer', $eig_id, $p_id);
         $hk_tab[1]['ART'] = 'Energieabrechnungsergebnis';
         $hk_tab[1]['IST'] = nummer_punkt2komma($hk_verbrauch_ist);
         $hk_tab[1]['ERG'] = nummer_punkt2komma($hk_verbrauch_ist);
         $zw2 = $hk_verbrauch_ist + $zw1 + $hk_ist_summe;
         $hk_tab[2]['ART'] = "<b>Zwischenergebnis nach Abzug Energieabrechnung</b>";
         $hk_tab[2]['ERG'] = '<b>' . nummer_punkt2komma($zw2) . '</b>';
         $hk_tab[0]['IST'] = $hk_tab[0][IST];
         /* Instandhaltungstabelle */
         $inst_kosten_soll = $this->hg_tab_soll_ist_einnahmen($this->ihr_konto, 'Einheit', $this->einheit_id, $this->eigentuemer_von_t, $this->eigentuemer_bis_t);
         $inst_tab[0]['ART'] = "Einnahmen aus Hausgeld für Instandhaltungsrücklage";
         $inst_tab[0]['ZEITRAUM'] = "{$this->eigentuemer_von_t_a} bis {$this->eigentuemer_bis_t_a}";
         $inst_tab[0]['SOLL'] = '-' . nummer_punkt2komma($inst_kosten_soll);
         $inst_ist_summe = $this->get_summe_zahlungen_arr_jahr('Eigentuemer', $eig_id, $jahr, $geldkonto_id, $this->ihr_konto);
         if (!$inst_ist_summe) {
             $inst_ist_summe = $this->get_summe_zahlungen_hga('Eigentuemer', $eig_id, $p_id, $this->ihr_konto);
         }
         $inst_tab[0]['IST'] = nummer_punkt2komma($inst_ist_summe);
         $inst_diff = $inst_ist_summe - $inst_kosten_soll;
         $tab_hg_zahl_kosten[2]['TEXT'] = 'Hausgeldzahlung Anteil für die IHR';
         $tab_hg_zahl_kosten[2]['SUM'] = nummer_punkt2komma($inst_ist_summe);
         $sum_hausgeld = nummer_komma2punkt($tab_hg_zahl_kosten[0]['SUM']) + nummer_komma2punkt($tab_hg_zahl_kosten[1]['SUM']) + nummer_komma2punkt($tab_hg_zahl_kosten[2]['SUM']);
         $tab_hg_zahl_kosten[3]['TEXT'] = "<b>Ihre Hausgeldzahlungen gesamt</b>";
         $tab_hg_zahl_kosten[3]['SUM'] = "<b>" . nummer_punkt2komma($sum_hausgeld) . "</b>";
         $tab_hg_zahl_kosten[4]['TEXT'] = '';
         $tab_hg_zahl_kosten[4]['SUM'] = '';
         $tab_hg_zahl_kosten[5]['TEXT'] = 'Ihr Kostenanteil';
         $tab_hg_zahl_kosten[5]['SUM'] = nummer_punkt2komma($hg_kosten_ant);
         $tab_hg_zahl_kosten[6]['TEXT'] = 'Ihr Energieverbrauch';
         $tab_hg_zahl_kosten[6]['SUM'] = nummer_punkt2komma($hk_verbrauch_ist);
         $tab_hg_zahl_kosten[7]['TEXT'] = 'Ihr Anteil in der IHR';
         $tab_hg_zahl_kosten[7]['SUM'] = nummer_punkt2komma($inst_kosten_soll * -1);
         $bet_ges = nummer_komma2punkt($tab_hg_zahl_kosten[5]['SUM']) + nummer_komma2punkt($tab_hg_zahl_kosten[6]['SUM']) + nummer_komma2punkt($tab_hg_zahl_kosten[7]['SUM']);
         $tab_hg_zahl_kosten[8]['TEXT'] = "<b>Ihre Beteiligung gesamt</b>";
         $tab_hg_zahl_kosten[8]['SUM'] = "<b>" . nummer_punkt2komma($bet_ges) . "</b>";
         $bet_erg = $sum_hausgeld + $bet_ges;
         if ($bet_erg > 0) {
             $nzgh = "Guthaben";
         } else {
             $nzgh = "Nachzahlung";
         }
         $tab_hg_zahl_kosten[9]['TEXT'] = "<b>Ergebnis {$nzgh} </b>";
         $tab_hg_zahl_kosten[9]['SUM'] = "<b>" . nummer_punkt2komma($bet_erg) . "</b>";
         $inst_tab[1]['ART'] = '<b>Ergebnis Instandhaltungsrücklage</b>';
         $inst_tab[1]['ERG'] = '<b>' . nummer_punkt2komma($inst_diff) . '</b>';
         $zw3 = $zw2 + $inst_diff;
         if ($zw3 < 0) {
             $zw_text = 'Nachzahlung';
         }
         if ($zw3 > 0) {
             $zw_text = 'Guthaben';
         }
         $inst_tab[2]['ART'] = "<b><i>Gesamtergebnis Hausgeld (inkl. Energieabrechnung und Instandhaltungsrücklagen)  =  {$zw_text}</i></b>";
         $inst_tab[2]['ERG'] = '<b>' . nummer_punkt2komma_t($zw3) . '</b>';
         $uebersicht[$a]['EINHEIT_ID'] = $einheit_id;
         $uebersicht[$a]['EINHEIT'] = $this->einheit_kurzname . "  " . ltrim(rtrim($this->eigentuemer_name_str));
         $uebersicht[$a]['ERGEBNIS'] = nummer_punkt2komma_t($zw3);
         $uebersicht[$a]['ZAHLUNGEN_J'] = nummer_punkt2komma($sum_hausgeld);
         $uebersicht[$a]['KOSTEN_J'] = nummer_punkt2komma($bet_ges);
         $zzz++;
         $pdf->ezSetDy(-5);
         /* Zweite Seite */
         $pdf->ezNewPage();
         $cols_1 = array('ART' => "Hausgeldeinnahmen für Kosten", 'SOLL' => "Soll", 'IST' => "Ist ", 'ERG' => "");
         $pdf->ezTable($hg_tab, $cols_1, '<b>Hausgeldeinnahmen ohne Instandhaltungsrücklage und Heizkostenvorschüsse</b>', array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('ART' => array('justification' => 'left'), 'SOLL' => array('justification' => 'right', 'width' => 45), 'IST' => array('justification' => 'right', 'width' => 50), 'ERG' => array('justification' => 'right', 'width' => 40))));
         $pdf->ezSetDy(-10);
         $cols_3 = array('ART' => "Energieabrechnung (siehe Abrechnung)", 'SOLL' => "Soll", 'IST' => "Ist ", 'ERG' => "");
         $pdf->ezTable($hk_tab, $cols_3, '<b>Energieabrechnung (Heizung/Kalt- Warmwasser)</b>', array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('ART' => array('justification' => 'left'), 'SOLL' => array('justification' => 'right', 'width' => 45), 'IST' => array('justification' => 'right', 'width' => 50), 'ERG' => array('justification' => 'right', 'width' => 40))));
         $pdf->ezSetDy(-10);
         $cols_2 = array('ART' => "Instandhaltungsrücklage", 'SOLL' => "Soll", 'IST' => "Ist ", 'ERG' => "");
         $pdf->ezTable($inst_tab, $cols_2, '<b>Instandhaltungsrücklage</b>', array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('ART' => array('justification' => 'left'), 'SOLL' => array('justification' => 'right', 'width' => 45), 'IST' => array('justification' => 'right', 'width' => 50), 'ERG' => array('justification' => 'right', 'width' => 40))));
         $pdf->ezSetDy(-10);
         $cols_hg = array('TEXT' => "BEZEICHNUNG", 'SUM' => "WERT [€]");
         $pdf->ezTable($tab_hg_zahl_kosten, $cols_hg, '<b>Übersicht Ihrer Zahlungen und Kosten</b>', array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 0, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('TEXT' => array('justification' => 'left'), 'SUM' => array('justification' => 'right', 'width' => 80))));
         /* Zweite Seite */
         // $pdf->ezNewPage();
         $pdf->ezSetDy(-30);
         $pdf->ezText("Sollte Ihre Abrechnung ein Guthaben ausweisen, dann werden wir nach Genehmigung der Jahresabrechnung auf der diesjährigen Eigentümerversammlung den Guthabenbetrag auf Ihr Konto überweisen, soweit es nicht zum Ausgleich von Rückständen benötigt wird.", 10, array('justification' => 'full'));
         $pdf->ezSetDy(-10);
         $pdf->ezText("Bei einer Nachzahlung überweisen Sie bitte den Nachzahlungsbetrag nach Genehmingung der Jahresabrechnung auf der diesjährigen Eigentümerversammlung auf das Hasusgeldkonto. Als Verwendungszweck geben Sie bitte <b>Hausgeldabrechnung {$jahr}  {$e->einheit_kurzname}</b> ein.", 10, array('justification' => 'full'));
         $pdf->ezSetDy(-10);
         $pdf->ezText("Wir behalten uns eine Berichtigung dieser Abrechnung vor, falls nachträglich Rechnungen Dritter für den Abrechnungszeitraum eingehen, die bei der Abrechnung hätten berücksichtigt werden müssen, Fehler anerkannt werden, welche zunächst nicht ohne weiteres erkennbar waren (z. B. Fehler von Messdiensten) oder der Abrechnungsfehler zu einem schlechthin unzumutbaren Nachteil für einen Vertragspartei führt.", 10, array('justification' => 'full'));
         $pdf->ezSetDy(-25);
         $cols_bu = array('DATUMD' => "Datum", 'KONTENRAHMEN_KONTO' => "Konto", 'BETRAG' => "Betrag [€]", 'VERWENDUNGSZWECK' => "Buchungstext");
         $bu_arr_et = $this->get_buchungen_et_HG($geldkonto_id, $eig_id, $jahr);
         if (is_array($bu_arr_et)) {
             $pdf->ezNewPage();
             $pdf->ezTable($bu_arr_et, $cols_bu, "Buchungsübersicht {$jahr} {$e->einheit_kurzname}", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 0, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 530, 'cols' => array('KONTENRAHMEN_KONTO' => array('justification' => 'left', 'width' => 40), 'BETRAG' => array('justification' => 'right'))));
         }
         if (is_array($hndl_arr)) {
             $pdf->ezNewPage();
             $pdf->ezSetDy(-10);
             $this->get_eigentumer_id_infos2($eig_id);
             $standard_anschrift = str_replace('<br />', "\n", $this->postanschrift[0]);
             if (!empty($standard_anschrift)) {
                 $pdf->ezText("{$standard_anschrift}", 10);
             } else {
                 $pdf->ezText("{$this->eig_namen_u_pdf}", 10);
                 $pdf->ezSetDy(10);
                 $pdf->ezText("{$this->haus_strasse} {$this->haus_nummer}", 10);
                 $pdf->ezSetDy(-10);
                 $pdf->ezText("{$this->haus_plz} {$this->haus_stadt}", 10);
             }
             $pdf->ezSetDy(-30);
             $pdf->setColor(0.6, 0.6, 0.6);
             $pdf->filledRectangle(50, 600, 500, 15);
             $pdf->setColor(0, 0, 0);
             $pdf->ezSetY(650);
             $pdf->ezText("{$p->partner_ort}, {$datum}", 10, array('justification' => 'right'));
             $pdf->ezSetY(650);
             $pdf->ezSety(615);
             $pdf->ezText("<b>Nachweis der haushaltsnahen Dienstleistungen im Sinne §35a EStG. für das Jahr {$jahr}</b>", 10);
             $pdf->ezSetDy(-20);
             $zeilen = $hndl_arr[$eig_id]['ZEILEN'];
             $anz_zeilen = count($zeilen);
             $hndl_arr[$eig_id]['ZEILEN'][$anz_zeilen][E_BETRAG_HNDL] = '<b>' . nummer_punkt2komma_t($tab_erg[BETRAG_HNDL][$eig_id]['BETEILIGUNG']) . '</b>';
             $zeilen = $hndl_arr[$eig_id]['ZEILEN'];
             $cols = array('KONTO' => "Konto", 'BEZ' => "Kontobezeichnung", 'GRUPPE' => "Kontoart", 'KOS_BEZ' => "Aufteilung", 'BETRAG_HNDL' => "HNDL Gesamt € ", 'G_KEY_A' => "Gesamt", 'E_KEY_A' => "Ihr Anteil", 'E_BETRAG_HNDL' => "Ihre Beteiligung € ");
             $pdf->ezTable($zeilen, $cols, "<b>Haushaltsnahe- und Handwerkerdienstleistungen </b>", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 55, 'xOrientation' => 'right', 'width' => 500, 'cols' => array('KONTO' => array('justification' => 'left', 'width' => 35), 'GRUPPE' => array('justification' => 'left', 'width' => 80), 'BETRAG_HNDL' => array('justification' => 'right', 'width' => 45), 'KOS_BEZ' => array('justification' => 'left', 'width' => 60), 'G_KEY_A' => array('justification' => 'right', 'width' => 45), 'E_KEY_A' => array('justification' => 'right', 'width' => 45), 'E_BETRAG_HNDL' => array('justification' => 'right', 'width' => 50))));
             $pdf->ezText("<b>*) Kostenkonto beinhaltet haushaltsnahe Dienstleistungen</b>", 7);
             $summe_hndl_pdf = nummer_punkt2komma_t(abs($tab_erg[BETRAG_HNDL][$eig_id]['BETEILIGUNG']));
             $pdf->ezSetDy(-20);
             $pdf->ezText("<b>Ihr steuerbegünstigter Kostenanteil beträgt {$summe_hndl_pdf} €</b>", 8);
             $pdf->ezSetDy(-20);
             $pdf->ezText("In den oben aufgeführten Kostenarten sind nur Lohnkosten und eventuelle An-/Abfahrtskosten enthalten.", 8);
             $pdf->ezText("Die Verteilung \"Ihr Anteil\" an den Gesamtkosten wird aus den jeweils aufgeführten Verteilerfaktoren der Hausgeld-Einzelabrechnung ermittelt.", 8);
             $pdf->ezSetDy(-10);
             $pdf->ezText("Die Originalbelege (Rechnungen) liegen bei der Hausverwaltung zur Einsicht vor.", 8);
             $pdf->ezSetDy(-10);
             $pdf->ezText("Bei steuerlichen Fragen, wenden Sie sich bitte an Ihren Steuerberater.", 8);
             $pdf->ezSetDy(-10);
             $pdf->ezText("Diese Angaben sind im Rahmen ordnungsgemäßer Verwaltung und nach bestem Wissen ermittelt worden. Für tatsächliche Gewährung einer Steuerbegünstigung durch das zuständige Finanzamt wird indes keine Haftung übernommen.", 8);
             $pdf->ezSetDy(-10);
             $pdf->ezText("Dieses Schreiben wurde maschinell erstellt und ist daher ohne Unterschrift gültig.\n", 8);
             $pdf->ezSetDy(-10);
             $bpdf->zahlungshinweis = strip_tags($bpdf->zahlungshinweis);
             // $pdf->ezText("$bpdf->zahlungshinweis",8);
         }
         $tab_zahl_rueck[$a]['EINHEIT'] = $this->einheit_kurzname;
         $tab_zahl_rueck[$a]['NAME'] = substr($this->eigentuemer_name_str, 0, -2);
         $tab_zahl_rueck[$a]['VORJAHRE'] = '';
         $tab_zahl_rueck[$a]['SOLL_IHR'] = nummer_punkt2komma($inst_kosten_soll);
         $tab_zahl_rueck[$a]['IST_IHR'] = nummer_punkt2komma($inst_ist_summe);
         $tab_zahl_rueck[$a]['SALDO'] = nummer_punkt2komma($inst_diff + $vorjahre);
     }
     // end for $a
     $anz_u = count($uebersicht);
     $summe_alle = 0;
     $summe_nachzahlung = 0;
     $summe_guthaben = 0;
     $summe_kosten = 0;
     $summe_zahlungen = 0;
     $summe_einheit = 0;
     $einheit_temp = '';
     $sum_pro_einheit = 0;
     for ($a = 0; $a < $anz_u; $a++) {
         $einheit_id_n = $uebersicht[$a]['EINHEIT_ID'];
         $betrag = nummer_komma2punkt($uebersicht[$a]['ERGEBNIS']);
         $kosten_j = nummer_komma2punkt($uebersicht[$a]['KOSTEN_J']);
         $zahlungen_j = nummer_komma2punkt($uebersicht[$a]['ZAHLUNGEN_J']);
         if ($a == 0) {
             $einheit_temp = $einheit_id_n;
             $summe_einheit += $betrag;
         }
         if ($a > 0) {
             if ($einheit_temp == $einheit_id_n) {
                 $summe_einheit += $betrag;
             } else {
                 $uebersicht[$a - 1]['ERGEBNIS_E'] = nummer_punkt2komma_t($summe_einheit);
                 $sum_pro_einheit += $summe_einheit;
                 $summe_einheit = 0;
                 $einheit_temp = $einheit_id_n;
                 $summe_einheit += $betrag;
                 /* Letzte Zeile/Einheit */
                 if ($a == $anz_u - 1) {
                     $uebersicht[$a]['ERGEBNIS_E'] = nummer_punkt2komma_t($summe_einheit);
                     $sum_pro_einheit += $summe_einheit;
                 }
             }
         }
         $betrag = nummer_komma2punkt($uebersicht[$a]['ERGEBNIS']);
         $kosten_j = nummer_komma2punkt($uebersicht[$a]['KOSTEN_J']);
         $zahlungen_j = nummer_komma2punkt($uebersicht[$a]['ZAHLUNGEN_J']);
         $summe_kosten += $kosten_j;
         $summe_zahlungen += $zahlungen_j;
         if ($betrag < '0.00') {
             $summe_nachzahlung += $betrag;
         } else {
             $summe_guthaben += $betrag;
         }
         $summe_alle += $betrag;
     }
     $pdf->ezNewPage();
     $pdf->ezSetDy(-20);
     $uebersicht[$anz_u + 1]['EINHEIT'] = '<b>SUMME NACHZAHLUNGEN (EINNAHMEN)</b>';
     $uebersicht[$anz_u + 1]['ERGEBNIS'] = '<b>' . nummer_punkt2komma_t($summe_nachzahlung) . '</b>';
     $uebersicht[$anz_u]['EINHEIT'] = '<b>SUMME GUTHABEN (AUSZAHLUNGEN)</b>';
     $uebersicht[$anz_u]['ERGEBNIS'] = '<b>' . nummer_punkt2komma_t($summe_guthaben) . '</b>';
     if ($summe_alle > '0.00') {
         $uebersicht[$anz_u + 2]['EINHEIT'] = '<b>GESAMT GUTHABEN</b>';
     } else {
         $uebersicht[$anz_u + 2]['EINHEIT'] = '<b>GESAMT NACHZAHLUNG</b>';
     }
     $uebersicht[$anz_u + 2]['ZAHLUNGEN_J'] = "<b>" . nummer_punkt2komma_t($summe_zahlungen) . "</b>";
     $uebersicht[$anz_u + 2]['KOSTEN_J'] = "<b>" . nummer_punkt2komma_t($summe_kosten) . "</b>";
     $uebersicht[$anz_u + 2]['ERGEBNIS'] = '<b>' . nummer_punkt2komma_t($summe_alle) . '</b>';
     $uebersicht[$anz_u + 2]['ERGEBNIS_E'] = '<b>' . nummer_punkt2komma_t($sum_pro_einheit) . '</b>';
     $cols = array('EINHEIT' => "EINHEIT / EIGENTÜMER", 'ZAHLUNGEN_J' => "HAUSGELD", 'KOSTEN_J' => "KOSTEN", 'ERGEBNIS' => "ERGEBNISE", 'ERGEBNIS_E' => "PRO EINHEIT");
     $pdf->ezTable($uebersicht, $cols, "<b>Abrechnungsergebnis {$this->p_jahr}</b>", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 9, 'xPos' => 55, 'xOrientation' => 'right', 'width' => 500, 'cols' => array('ERGEBNIS' => array('justification' => 'right', 'width' => 65), 'ERGEBNIS_E' => array('justification' => 'right', 'width' => 60), 'KOSTEN_J' => array('justification' => 'right', 'width' => 60), 'ZAHLUNGEN_J' => array('justification' => 'right', 'width' => 60))));
     // $pdf->ezTable($tab_erg[BETRAG_HNDL]);
     ob_clean();
     // ausgabepuffer leeren
     $pdf->ezStream();
     die;
 }