Example #1
0
 function finde_buchungen_pdf($abfrage)
 {
     $result = mysql_query("{$abfrage}");
     $numrows = mysql_numrows($result);
     if ($numrows) {
         ob_clean();
         // ausgabepuffer leeren
         //include_once ('pdfclass/class.ezpdf.php');
         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);
         $g = new geldkonto_info();
         $summe = 0;
         $zeile = 0;
         while ($row = mysql_fetch_assoc($result)) {
             $datum = date_mysql2german($row[DATUM]);
             $auszugsnr = $row['KONTO_AUSZUGSNUMMER'];
             $g_buchungsnummer = $row['G_BUCHUNGSNUMMER'];
             $erfass_nr = $row['ERFASS_NR'];
             $betrag = nummer_punkt2komma($row['BETRAG']);
             $vzweck = $row['VERWENDUNGSZWECK'];
             $kos_typ = $row['KOSTENTRAEGER_TYP'];
             $kos_id = $row['KOSTENTRAEGER_ID'];
             $kostenkonto = $row['KONTENRAHMEN_KONTO'];
             $geldkonto_id = $row['GELDKONTO_ID'];
             $g->geld_konto_details($geldkonto_id);
             $r = new rechnung();
             if ($kos_typ == 'Mietvertrag') {
                 $mv = new mietvertraege();
                 $mv->get_mietvertrag_infos_aktuell($kos_id);
                 $kostentraeger_bezeichnung = $mv->personen_name_string_u;
             } else {
                 $kostentraeger_bezeichnung = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
                 $kostentraeger_bezeichnung = substr($kostentraeger_bezeichnung, 0, 20);
             }
             $kostentraeger_bezeichnung = strip_tags($kostentraeger_bezeichnung);
             $g->geldkonto_bezeichnung_kurz = substr($g->geldkonto_bezeichnung_kurz, 0, 18);
             $table_arr[$zeile]['GK'] = $g->geldkonto_bezeichnung;
             $table_arr[$zeile]['KOS_BEZ'] = $kostentraeger_bezeichnung;
             $table_arr[$zeile]['DATUM'] = $datum;
             $table_arr[$zeile]['KONTO'] = $kostenkonto;
             $table_arr[$zeile]['BUCHUNGSNR'] = $g_buchungsnummer;
             $table_arr[$zeile]['BETRAG'] = $betrag;
             $table_arr[$zeile]['VERWENDUNG'] = $vzweck;
             // echo "<tr><td>$g->geldkonto_bezeichnung<td>$kostentraeger_bezeichnung</td><td>$datum</td><td><b>$kostenkonto</b></td><td><b>$g_buchungsnummer</b></td><td>$betrag</td><td>$vzweck</td></tr>";
             $summe = $summe + nummer_komma2punkt($betrag);
             $zeile++;
         }
         $summe = nummer_punkt2komma($summe);
         // echo "<tr class=\"feldernamen\"><td colspan=5 align=\"right\"><b>SUMME</b></td><td colspan=\"2\"><b>$summe</b></td></tr>";
         $table_arr[$zeile + 1]['BUCHUNGSNR'] = '<b>SUMME</b>';
         $table_arr[$zeile + 1]['BETRAG'] = "<b>{$summe}</b>";
         $cols = array('GK' => "Geldkonto", 'KOS_BEZ' => "Zuordnung", 'DATUM' => "Datum", 'KONTO' => "Konto", 'BUCHUNGSNR' => "Buchungsnr", 'VERWENDUNG' => "Buchungstext", 'BETRAG' => "Betrag");
         if (!empty($kostenkonto)) {
             $kt = new kontenrahmen();
             $kontenrahmen_id = $kt->get_kontenrahmen('Geldkonto', $geldkonto_id);
             $kt->konto_informationen2($kostenkonto, $kontenrahmen_id);
             $ueberschrift = "Kostenkonto {$kostenkonto} - {$kt->konto_bezeichnung}";
         }
         $pdf->ezTable($table_arr, $cols, "{$ueberschrift}", array('showHeadings' => 1, 'showLines' => '1', 'shaded' => 1, 'shadeCol' => array(0.78, 0.95, 1), 'shadeCol2' => array(0.1, 0.5, 1), 'titleFontSize' => 10, 'fontSize' => 8, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 500, 'cols' => array('ZEILE' => array('justification' => 'right', 'width' => 30))));
         $pdf->ezStream();
     } else {
         fehlermeldung_ausgeben("Keine Buchung gefunden");
     }
 }
Example #2
0
 function bk_nk_profil_berechnung_Alt_ok($profil_id)
 {
     /* Profil Information holen, z.B. um Einheiten Array zu Bilden, d.h. für wenn ist die BK & NK */
     $this->bk_profil_infos($profil_id);
     $jahr = $this->bk_jahr;
     /* Alle ausgewählten BK Kontensummen mit Key und Kostenträger wählen */
     $summen_arr = $this->get_buchungssummen_konto_arr($profil_id);
     $anzahl_summen = count($summen_arr);
     $k = new kontenrahmen();
     $this->kontenrahmen_id = $k->get_kontenrahmen($this->bk_kos_typ, $this->bk_kos_id);
     $diff = 0.0;
     // Anfangsdifferenz = 0;
     $hndl_diff = 0.0;
     // Anfangsdifferenz = 0;
     for ($a = 0; $a < $anzahl_summen; $a++) {
         $summe_konto = $summen_arr[$a]['G_SUMME'];
         /* Positiv machen */
         if ($summe_konto < 0) {
             $summe_konto = substr($summe_konto, 1);
         }
         $summe_konto_a = nummer_punkt2komma($summe_konto);
         $bk_k_id = $summen_arr[$a]['BK_K_ID'];
         $kostenkonto = $this->get_konto_from_id($bk_k_id, $profil_id);
         $k->konto_informationen2($kostenkonto, $this->kontenrahmen_id);
         $bk_res[kontrolle][$a][$bk_k_id][KOSTENART] = $k->konto_bezeichnung;
         $key_id = $summen_arr[$a]['KEY_ID'];
         $kos_typ = $summen_arr[$a]['KOS_TYP'];
         $kos_id = $summen_arr[$a]['KOS_ID'];
         $anteil = $summen_arr[$a]['ANTEIL'];
         $anteil_a = nummer_punkt2komma($anteil);
         $anteil_betrag = $summe_konto / 100 * $anteil;
         $anteil_betrag_a = nummer_punkt2komma(abs($anteil_betrag));
         $bk_res[kontrolle][$a][$bk_k_id][SUMME] = $anteil_betrag;
         $hndl_betrag = $summen_arr[$a]['HNDL_BETRAG'];
         // wird nicht prozentual umgelegt, nur verteilt
         if ($hndl_betrag < 0) {
             $hndl_betrag = substr($hndl_betrag, 1);
         }
         $hndl_betrag_anteil = $hndl_betrag / 100 * $anteil;
         $bk_res[kontrolle][$a][$bk_k_id][HNDL] = $hndl_betrag_anteil;
         $bk_res[kontrolle][$a][$bk_k_id][KOS_TYP] = $kos_typ;
         $bk_res[kontrolle][$a][$bk_k_id][KOS_ID] = $kos_id;
         $r = new rechnung();
         $g_kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
         $bk_res[kontrolle][$a][$bk_k_id][G_KOS_BEZ] = $g_kos_bez;
         if ($kos_typ == 'Objekt') {
             $o = new objekt();
             $gesamt_qm_alle = $o->get_qm_gesamt($kos_id);
             $gesamt_qm_gewerbe = $o->get_qm_gesamt_gewerbe($kos_id);
             $gesamt_qm = $gesamt_qm_alle - $gesamt_qm_gewerbe;
             $einheiten_arr = $o->einheiten_objekt_arr($kos_id);
         }
         /* BK & Nk für alle Einheiten in einem Haus */
         if ($kos_typ == 'Haus') {
             $h = new haus();
             $gesamt_qm_alle = $h->get_qm_gesamt($kos_id);
             $gesamt_qm_gewerbe = $h->get_qm_gesamt_gewerbe($kos_id);
             $gesamt_qm = $gesamt_qm_alle - $gesamt_qm_gewerbe;
             $einheiten_arr = $h->liste_aller_einheiten_im_haus($kos_id);
         }
         /* BK & Nk für eine Einheit */
         if ($kos_typ == 'Einheit') {
             $e = new einheit();
             $einheiten_arr = $e->get_einheit_as_array($kos_id);
         }
         /* BK & Nk für eine Einheit */
         if ($kos_typ == 'Mietvertrag') {
             $mv = new mietvertraege();
             $mv->get_mietvertrag_infos_aktuell($kos_id);
             $e = new einheit();
             $einheiten_arr = $e->get_einheit_as_array($mv->einheit_id);
         }
         $anzahl_einheiten = count($einheiten_arr);
         $beteiligung_gesamt = 0;
         for ($b = 0; $b < $anzahl_einheiten; $b++) {
             $einheit_id = $einheiten_arr[$b][EINHEIT_ID];
             $einheit_qm = $einheiten_arr[$b][EINHEIT_QM];
             $einheit_name = $einheiten_arr[$b][EINHEIT_KURZNAME];
             $leerstand_und_mvs = $this->mvs_und_leer_jahr($einheit_id, $jahr);
             $anzahl_einheiten_mvs = count($leerstand_und_mvs);
             for ($c = 0; $c < $anzahl_einheiten_mvs; $c++) {
                 $kos_typ_e = $leerstand_und_mvs[$c]['KOS_TYP'];
                 $kos_id_e = $leerstand_und_mvs[$c]['KOS_ID'];
                 $von = $leerstand_und_mvs[$c]['BERECHNUNG_VON'];
                 $bis = $leerstand_und_mvs[$c]['BERECHNUNG_BIS'];
                 $zeitraum = date_mysql2german($leerstand_und_mvs[$c]['BERECHNUNG_VON']) . ' - ' . date_mysql2german($leerstand_und_mvs[$c]['BERECHNUNG_BIS']);
                 $tage = $leerstand_und_mvs[$c]['TAGE'];
                 if ($kos_typ_e == 'Leerstand') {
                     $empfaenger = 'Leerstand';
                 } else {
                     $mv = new mietvertraege();
                     $mv->get_mietvertrag_infos_aktuell($kos_id_e);
                     $empfaenger = $mv->personen_name_string;
                 }
                 /* KOSTENKONTO */
                 $beteiligung_genau = $this->beteiligung_berechnen($anteil_betrag, $von, $bis, $gesamt_qm, $einheit_qm) + $diff;
                 // genau + $diff
                 $beteiligung = round($beteiligung_genau, 2);
                 // runden
                 /* Eigene Diff */
                 $diff = $beteiligung_genau - $beteiligung;
                 // eigene diff, die weiter gegeben wird
                 /* HNDL */
                 $beteiligung_hndl_genau = $this->beteiligung_berechnen($hndl_betrag_anteil, $von, $bis, $gesamt_qm, $einheit_qm) + $hndl_diff;
                 // genau + $diff
                 $beteiligung_hndl = round($beteiligung_hndl_genau, 2);
                 // runden
                 /* Eigene Diff */
                 $hndl_diff = $beteiligung_hndl_genau - $beteiligung_hndl;
                 // eigene diff, die weiter gegeben wird
                 $genkey_id = 'gesamt m²';
                 // echo "<b>$empfaenger $beteiligung_genau <> $beteiligung | $diff </b><br>";
                 $beteiligung_a = nummer_punkt2komma(abs($beteiligung));
                 // echo "$beteiligung_a<br>";
                 $beteiligung_hndl_a = nummer_punkt2komma(abs($beteiligung_hndl));
                 $bk_res[$einheit_name . ' ' . $zeitraum]['EMPF'] = "{$empfaenger}";
                 // $bk_res[$einheit_name.' '.$zeitraum]['G_KOS_BEZ']=$g_kos_bez;
                 $bk_res[$einheit_name . ' ' . $zeitraum]['KOS_TYP'] = "{$kos_typ_e}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['KOS_ID'] = "{$kos_id_e}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['QM_G_OBJEKT'] = "{$gesamt_qm_alle}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['QM_G'] = "{$gesamt_qm}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['QM_G_GEWERBE'] = "{$gesamt_qm_gewerbe}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['EINHEIT_QM'] = "{$einheit_qm}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['ZEITRAUM'] = "{$zeitraum}";
                 $bk_res[$einheit_name . ' ' . $zeitraum]['EINHEIT_NAME'] = "{$einheit_name}";
                 $bk_res[$einheit_name . ' ' . $zeitraum][] = array('KOSTENART' => "{$k->konto_bezeichnung}", 'G_KOS_BEZ' => "{$g_kos_bez}", 'G_HNDL' => "{$hndl_betrag_anteil}", 'BK_K_ID' => "{$bk_k_id}", 'G_BETRAG' => "{$summe_konto_a}", 'ANTEIL' => "{$anteil_a}", 'UMLAGE' => "{$anteil_betrag_a}", 'G_KEY' => "{$gesamt_qm} m²", 'QM' => "{$einheit_qm}", 'BET_G' => "{$beteiligung_a}", 'BET_HNDL' => "{$beteiligung_hndl_a}", 'GENKEY_ID' => "{$genkey_id}");
                 $bk_res[kontrolle][$a][$bk_k_id][KOSTENART] = $k->konto_bezeichnung;
                 $bk_res[kontrolle][$a][$bk_k_id][SUMME_K] += $beteiligung;
                 $bk_res[kontrolle][$a][$bk_k_id][HNDL_K] += $beteiligung_hndl;
                 // echo "<hr>";
             }
             // end for $c
         }
         // end for $b
         $diff = 0.0;
         // Anfangsdifferenz auf = 0, weil nächstes konto;
         $hndl_diff = 0.0;
     }
     // end for $a
     // echo '<pre>';
     // print_r($bk_res);
     // print_r($bk_res[kontrolle]);
     // print_r(array_keys($bk_res));
     // $this->ber_array_anzeigen($bk_res);
     return $bk_res;
 }
Example #3
0
 function form_profil_step2($profil_id)
 {
     $this->get_r_profil_infos($profil_id);
     $f = new formular();
     $f->erstelle_formular('Buchungskonten für das Profil wählen', null);
     $kr = new kontenrahmen();
     $kr_id = $kr->get_kontenrahmen('GELDKONTO', $this->gk_id);
     // echo "$this->kurz_b $kr_id";
     $arr = $kr->konten_in_arr_rahmen($kr_id);
     // echo '<pre>';
     // print_r($arr);
     if (!is_array($arr)) {
         fehlermeldung_ausgeben("Kontenrahmen unbekannt!");
         die;
     } else {
         // echo '<pre>';
         $anz = count($arr);
         $b_konten = $this->profil_liste_konten_arr($profil_id);
         // echo '<pre>';
         // print_r($b_konten);
         for ($a = 0; $a < $anz; $a++) {
             $konto = $arr[$a]['KONTO'];
             $bez = $arr[$a]['BEZEICHNUNG'];
             if (!in_array($konto, $b_konten)) {
                 $f->check_box_js1("b_konten[{$a}]", 'b_konto' . $a, $konto, "{$konto} {$bez}", null, '');
             } else {
                 $f->check_box_js1("b_konten[{$a}]", 'b_konto' . $a, $konto, "{$konto} {$bez}", null, 'checked');
             }
             $f->hidden_feld("bez_arr[{$a}]", $bez);
         }
     }
     // print_r($bez_arr);
     $f->send_button('Snd_konten', 'speichern');
     $f->hidden_feld('option', 'konten_bearbeiten');
     $f->hidden_feld('profil_id', $profil_id);
     $f->ende_formular();
 }
Example #4
0
 function kontobuchungen_anzeigen_jahr_xls($geldkonto_id, $jahr)
 {
     $result = mysql_query("SELECT SUM(BETRAG) AS SUMME, KONTENRAHMEN_KONTO, `KOSTENTRAEGER_TYP`, `KOSTENTRAEGER_ID` FROM GELD_KONTO_BUCHUNGEN WHERE GELDKONTO_ID='{$geldkonto_id}' && ( DATE_FORMAT( DATUM, '%Y' ) = '{$jahr}') && AKTUELL='1' GROUP BY KONTENRAHMEN_KONTO, KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID");
     $numrows = mysql_numrows($result);
     if ($numrows > 0) {
         ob_clean();
         // ausgabepuffer leeren
         $gk = new geldkonto_info();
         $gk->geld_konto_details($geldkonto_id);
         $fileName = "{$gk->geldkonto_bezeichnung} - Buchungskonten summiert {$jahr}" . '.xls';
         header("Content-type: application/vnd.ms-excel");
         header("Content-Disposition: inline; filename={$fileName}");
         echo "<table class=\"sortable\">";
         echo "<tr><th>SUMME</th><th>ZUWEISUNG</th><th>BEZEICHNUNG</th></tr>";
         $k = new kontenrahmen();
         $kontenrahmen_id = $k->get_kontenrahmen('GELDKONTO', $geldkonto_id);
         $kto_temp = '';
         $z = 0;
         $kto_sum = 0;
         while ($row = mysql_fetch_assoc($result)) {
             $kostenkonto = $row['KONTENRAHMEN_KONTO'];
             $k->konto_informationen2($kostenkonto, $kontenrahmen_id);
             if ($kostenkonto != $kto_temp) {
                 if ($z > 0) {
                     $kto_sum_a = nummer_punkt2komma($kto_sum);
                     echo "<tr><th></th><th colspan=\"2\">{$kto_sum_a}</th></tr>";
                     $kto_sum = 0;
                 }
                 echo "<tr><th></th><th colspan=\"2\">Kostenkonto: {$kostenkonto} {$k->konto_bezeichnung}</th></tr>";
             }
             $betrag = nummer_punkt2komma($row['SUMME']);
             $kto_sum += $row['SUMME'];
             $kos_typ = $row['KOSTENTRAEGER_TYP'];
             $kos_id = $row['KOSTENTRAEGER_ID'];
             $r = new rechnung();
             $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id);
             if ($kos_typ == 'Mietvertrag') {
                 $mvs = new mietvertraege();
                 $mvs->get_mietvertrag_infos_aktuell($kos_id);
                 $kos_bez_tmp = $kos_bez;
                 $kos_bez = "{$mvs->einheit_kurzname} {$kos_bez_tmp}";
             }
             echo "<tr><td>{$betrag}</td><td>{$kos_typ}</td><td>{$kos_bez}</td></tr>";
             $kto_temp = $kostenkonto;
             $z++;
         }
         $kto_sum_a = nummer_punkt2komma_t($kto_sum);
         echo "<tr><th colspan=\"3\">{$kto_sum_a}</th></tr>";
         echo "</table><br>";
     } else {
     }
     die;
 }