function zuweisung_anzeigen($kontenrahmen_id) { $result = mysql_query("SELECT * FROM `KONTENRAHMEN_ZUWEISUNG` WHERE `KONTENRAHMEN_ID` ='{$kontenrahmen_id}' AND `AKTUELL`='1'"); $numrows = mysql_numrows($result); if ($numrows > 0) { while ($row = mysql_fetch_assoc($result)) { $dat = $row['DAT']; $typ = $row['TYP']; $id = $row['TYP_ID']; $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($typ, $id); $link_zuweis_loeschen = "<a href=\"?daten=kontenrahmen&option=zuweisung_del&dat={$dat}\">Zuweisung löschen</a>"; echo "<br><b>{$typ}: {$kos_bez}</b> - {$link_zuweis_loeschen}"; } } else { echo "<br><b>Nicht zugewiesen</b>"; } }
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"); } }
function pdf_income_reports2015($pdf, $objekt_id, $jahr) { $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['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 "$einheit_id "; $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']; $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][$zeile]['NT'] = $n_tage; if ($pdf_tab[$e][$et][$zeile - 1]['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][$zeile]['MONAT'] = "<b>" . monat2name($et_monat) . " {$et_jahr}</b>"; $hausgeld_soll = $hausgeld_soll_f; $pdf_tab[$e][$et][$zeile]['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][$zeile]['HV'] = nummer_punkt2komma(-30.0 / $tage * $n_tage); $sum_hv += nummer_komma2punkt(nummer_punkt2komma(-30.0 / $tage * $n_tage)); $pdf_tab[$e][$et][$zeile]['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][$zeile]['MONAT'] = "<b>" . monat2name($et_monat) . " {$et_jahr}</b>"; $pdf_tab[$e][$et][$zeile]['IHR'] = '0.000'; $pdf_tab[$e][$et][$zeile]['HV'] = '0.000'; $pdf_tab[$e][$et][$zeile]['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########################## $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 (is_array($mv_arr)) { // print_r($mv_arr); // die(); $pdf_tab[$e][$et][$zeile]['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][$zeile]['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][$zeile]['WM_S'] = $wm; $sum_wm_s += $wm; $pdf_tab[$e][$et][$zeile]['MWST'] = $mwst; $sum_mwst += $mwst; $pdf_tab[$e][$et][$zeile]['NK'] = nummer_komma2punkt(nummer_punkt2komma($wm - nummer_komma2punkt(nummer_punkt2komma($mk->ausgangs_kaltmiete / $tage * $n_tage)))); $sum_nk += $pdf_tab[$e][$et][$zeile]['NK']; $pdf_tab[$e][$et][$zeile]['KM_S'] = $mk->ausgangs_kaltmiete; $sum_km_s += $pdf_tab[$e][$et][$zeile]['KM_S']; $pdf_tab[$e][$et][$zeile]['KM_SA'] = nummer_komma2punkt(nummer_punkt2komma($mk->ausgangs_kaltmiete / $tage * $n_tage)); $sum_km_ant += $pdf_tab[$e][$et][$zeile]['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][$zeile]['M_ERG'] = nummer_komma2punkt(nummer_punkt2komma($mz->erg)); $pdf_tab[$e][$et][$zeile]['M_ERGA'] = nummer_komma2punkt(nummer_punkt2komma($mz->erg / $tage * $n_tage)); // print_r($mz); // die(); if ($anz_mv > 0) { $zeile++; } } } else { $pdf_tab[$e][$et][$zeile]['LEER'] = 'J'; $pdf_tab[$e][$et][$zeile]['MV_NAME'] = LEER; } } else { // print_r($m_arr); $pdf_tab[$e][$et][$zeile]['MONAT'] = "<b>" . monat2name($monat) . " {$jahr}</b>"; $pdf_tab[$e][$et][$zeile]['IHR'] = '---'; $pdf_tab[$e][$et][$zeile]['HV'] = '---'; $pdf_tab[$e][$et][$zeile]['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_id); } 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 = $buchungen[$b]['BETRAG']; $kos_typ = $buchungen[$b]['KOSTENTRAEGER_TYP']; $kos_id = $buchungen[$b]['KOSTENTRAEGER_ID']; $vzweck = $buchungen[$b]['VERWENDUNGSZWECK']; $datum = $buchungen[$b]['DATUM']; $pdf_tab[$e][$et][$zeile][$bkonto] = $betrag; $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] += $betrag; $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][$zeile + 1]['MONAT'] = 'SUMME'; $pdf_tab[$e][$et][$zeile + 1]['IHR'] = nummer_komma2punkt(nummer_punkt2komma($sum_ihr)); $pdf_tab[$e][$et][$zeile + 1]['HV'] = nummer_komma2punkt(nummer_punkt2komma($sum_hv)); $pdf_tab[$e][$et][$zeile + 1]['FIX'] = nummer_komma2punkt(nummer_punkt2komma($sum_fix)); $pdf_tab[$e][$et][$zeile + 1]['KM_S'] = nummer_komma2punkt(nummer_punkt2komma($sum_km_s)); $pdf_tab[$e][$et][$zeile + 1]['KM_SA'] = nummer_komma2punkt(nummer_punkt2komma($sum_km_ant)); $pdf_tab[$e][$et][$zeile + 1]['WM_S'] = nummer_komma2punkt(nummer_punkt2komma($sum_wm_s)); $pdf_tab[$e][$et][$zeile + 1]['MWST'] = nummer_komma2punkt(nummer_punkt2komma($sum_mwst)); $pdf_tab[$e][$et][$zeile + 1]['NK'] = nummer_komma2punkt(nummer_punkt2komma($sum_nk)); $pdf_tab[$e][$et][$zeile + 1]['EINHEIT'] = $weg1->einheit_kurzname; $pdf_tab[$e][$et][$zeile + 1]['ET'] = $weg1->empf_namen; // $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][$zeile + 1][$kto] = nummer_komma2punkt(nummer_punkt2komma($sum_konten[$kto])); } $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(); $pdf->ezSetDy(10); // abstand $weg1->eigentuemer_von_d = date_mysql2german($weg1->eigentuemer_von); $weg1->eigentuemer_bis_d = date_mysql2german($weg1->eigentuemer_bis); $pdf->ezText("{$weg1->einheit_kurzname} Lage: {$weg1->einheit_lage}\n{$weg1->empf_namen}\nVON:{$weg1->eigentuemer_von_d} BIS:{$weg1->eigentuemer_bis_d}", 9); // $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); // if(in_array('80001', $cols)){ $cols['FIX'] = FIX; $cols['NK'] = NK; // } if (in_array('5020', $cols)) { $_5020_ok = true; unset($cols['5020']); // ob_clean(); // echo '<pre>'; // print_r($cols); // die(); } if ($_5020_ok == true) { $cols['5020'] = 'Transfer'; } $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' => 650, 'cols' => array('TXT' => array('justification' => 'right'), 'IHR' => array('justification' => 'right'), 'HV' => array('justification' => 'right')))); /* Legende */ 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"; 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]); $pdf->ezNewPage(); } // 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 (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(); $pdf->ezTable($pdf_last, $cols, UEBERSICHT . " {$jahr} - {$oo->objekt_kurzname}", array('showHeadings' => 1, 'shaded' => 1, 'titleFontSize' => 8, 'fontSize' => 7, 'xPos' => 40, 'xOrientation' => 'right', 'width' => 760)); $pdf->ezSetDy(-20); // abstand $pdf->ezText("{$string}", 9); } } // print_r($pdf_tab); }
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; }
function pdf_tabelle_mieterbelastung($kto, $mv_id, $pdf) { $mvs = new mietvertraege(); $mvs->get_mietvertrag_infos_aktuell($mv_id); $gk = new geldkonto_info(); $gk->geld_konto_ermitteln('Objekt', $mvs->objekt_id); if (!$gk->geldkonto_id) { // $db_abfrage = "SELECT * FROM `GELD_KONTO_BUCHUNGEN` WHERE `KONTENRAHMEN_KONTO` = '$kto' AND ((KOSTENTRAEGER_TYP='Einheit' && KOSTENTRAEGER_ID='$mvs->einheit_id') OR (KOSTENTRAEGER_TYP='Mietvertrag' && KOSTENTRAEGER_ID='$mv_id')) && `AKTUELL` = '1' ORDER BY `GELD_KONTO_BUCHUNGEN`.`GELD_KONTO_BUCHUNGEN_DAT` ASC"; } else { // $db_abfrage = "SELECT * FROM `GELD_KONTO_BUCHUNGEN` WHERE `KONTENRAHMEN_KONTO` = '$kto' GK_ID='$gk->geldkonto_id' AND ((KOSTENTRAEGER_TYP='Einheit' && KOSTENTRAEGER_ID='$mvs->einheit_id') OR (KOSTENTRAEGER_TYP='Mietvertrag' && KOSTENTRAEGER_ID='$mv_id')) && `AKTUELL` = '1' ORDER BY `GELD_KONTO_BUCHUNGEN`.`GELD_KONTO_BUCHUNGEN_DAT` ASC"; } $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { $zeile = 0; while ($row = mysql_fetch_assoc($result)) { $pdf_table[$zeile]['DATUM'] = $row['DATUM']; $pdf_table[$zeile]['KTO'] = $row['KONTENRAHMEN_KONTO']; $pdf_table[$zeile]['TXT'] = $row['VERWENDUNGSZWECK']; $pdf_table[$zeile]['BETRAG'] = nummer_punkt2komma_t($row['BETRAG']); $pdf_table[$zeile]['KOS_TYP'] = $row['KOSTENTRAEGER_TYP']; $pdf_table[$zeile]['KOS_ID'] = $row['KOSTENTRAEGER_ID']; $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($row['KOSTENTRAEGER_TYP'], $row['KOSTENTRAEGER_ID']); $pdf_table[$zeile]['KOS_BEZ'] = $kos_bez; $zeile++; } $pdf->ezNewPage(); $cols = array('DATUM' => "Datum", 'TXT' => "Buchungstext", 'BETRAG' => "Betrag", 'KOS_BEZ' => 'ZUWEISUNG', 'KOS_TYP' => 'TYP'); $pdf->ezTable($pdf_table, $cols, "Mieterbelastung", array('showHeadings' => 1, 'shaded' => 0, 'titleFontSize' => 8, 'fontSize' => 7, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 500, 'rowGap' => 1, 'cols' => array('DATUM' => array('justification' => 'right', 'width' => 50), 'BEMERKUNG' => array('justification' => 'left', 'width' => 300), 'BETRAG' => array('justification' => 'right', 'width' => 75), 'SALDO' => array('justification' => 'right', 'width' => 75)))); // print_r($pdf_table); } }
function form_vg_rechnungen($objekt_id, $partner_id) { $o = new objekt(); $o->get_objekt_infos($objekt_id); echo $o->objekt_kurzname; echo $o->objekt_eigentuemer; $ein_arr = $o->einheiten_objekt_arr($objekt_id); // echo '<pre>'; // print_r($ein_arr); $anz_e = count($ein_arr); for ($a = 0; $a < $anz_e; $a++) { $einheit_id = $ein_arr[$a]['EINHEIT_ID']; $einheit_typ = $ein_arr[$a]['TYP']; // echo $einheit_id; $weg = new weg(); $et_arr = $weg->get_eigentuemer_arr($einheit_id); if (is_array($et_arr)) { $le_et = count($et_arr) - 1; $ein_arr[$a]['ET_ID'] = $et_arr[$le_et]['ID']; $ein_arr[$a]['R_EMPFAENGER_TYP'] = 'Eigentuemer'; $empf_typen[] = 'Eigentuemer'; } else { $ein_arr[$a]['ET_ID'] = $o->objekt_eigentuemer_id; $ein_arr[$a]['R_EMPFAENGER_TYP'] = 'Partner'; $empf_typen[] = 'Partner'; } $n_ein_arr[$einheit_typ][] = $ein_arr[$a]; } // end for unset($ein_arr); // print_r(array_keys($n_ein_arr)); // print_r($n_ein_arr); // print_r(array_keys($n_ein_arr)); $empf_kat = array_unique($empf_typen); print_r($empf_kat); $anz_kat = count($empf_kat); $keys = array_keys($n_ein_arr); // print_r($keys); $anz_keys = count($keys); if (in_array('Eigentuemer', $empf_kat)) { for ($k = 0; $k < $anz_keys; $k++) { $key = $keys[$k]; $f = new formular(); $f->erstelle_formular("Rechnungen für {$key}", null); if ($key == 'Stellplatz' or $key == 'Keller') { $f->text_feld('Bruttobetrag pro Einheit', 'brutto', '8,00', 10, 'brutto', null); } else { $f->text_feld('Bruttobetrag pro Einheit', 'brutto', '14,99', 10, 'brutto', null); } $f->text_bereich('Kurztext (Einheit wird automatisch hinzugefügt', 'kurztext', 'Verwaltergebühr', 50, 2, 'kurztext'); echo "<table class=\"sortable\">"; echo "<tr><th>EINHEIT</th><th>EMPFÄNGER</th><th>BEZ</th></tr>"; $anz_e = count($n_ein_arr[$key]); for ($a = 0; $a < $anz_e; $a++) { $einheit_id = $n_ein_arr[$key][$a]['EINHEIT_ID']; $et_id = $n_ein_arr[$key][$a]['ET_ID']; $r_empf_typ = $n_ein_arr[$key][$a]['R_EMPFAENGER_TYP']; $einheit_kn = $n_ein_arr[$key][$a]['EINHEIT_KURZNAME']; $r = new rechnung(); $e_bez = $r->kostentraeger_ermitteln($r_empf_typ, $et_id); echo "<tr><td>"; $f->check_box_js1('check[]', 'check', $a, $einheit_kn, '', 'checked'); echo "</td><td>{$r_empf_typ} {$et_id}</td><td>{$e_bez}</td></tr>"; $f->hidden_feld("EMPF_TYP[]", $n_ein_arr[$key][$a]['R_EMPFAENGER_TYP']); $f->hidden_feld("EMPF_ID[]", $n_ein_arr[$key][$a]['ET_ID']); $f->hidden_feld("EINHEITEN[]", $n_ein_arr[$key][$a]['EINHEIT_ID']); } // end for $a echo "</table>"; $f->hidden_feld('typ', $key); $f->hidden_feld('option', 'rgg'); $ko = new kontenrahmen(); $ko->dropdown_kontorahmenkonten('Kostenkonto', 'kostenkonto', 'kostenkonto', 'Geldkonto', $_SESSION['geldkonto_id'], ''); $f->check_box_js('sepa', '1', 'In SEPA-Überweisungen vorbereiten', '', 'checked'); $f->send_button('btn_snd', "{$anz_e} Einzelrechnungen für {$key} erstellen"); $f->ende_formular(); } // end for $k } else { echo '<pre>'; // print_r($empf_kat); // print_r($n_ein_arr); $f = new formular(); $f->erstelle_formular("Gesamtrechnung", null); echo $o->objekt_kurzname; echo "<br>"; echo $o->objekt_eigentuemer; $f->text_bereich('Kurztext', 'kurztext', 'Verwaltergebühr', 50, 2, 'kurztext'); $f->hidden_feld('empf_typ', 'Partner'); $f->hidden_feld('empf_id', $o->objekt_eigentuemer_id); for ($k = 0; $k < $anz_keys; $k++) { $key = $keys[$k]; $anz_e = count($n_ein_arr[$key]); $f->hidden_feld('mengen[]', $anz_e); // echo "$key $anz_e<br>"; $f->hidden_feld('typ[]', $key); if ($key == 'Stellplatz' or $key == 'Keller') { $g = $anz_e * 8; $f->text_feld("{$anz_e} x Bruttobetrag pro {$key} = {$g} EUR", 'brutto[]', '8,00', 10, 'brutto', null); } else { $g = $anz_e * 14.99; $f->text_feld("{$anz_e} x Bruttobetrag pro {$key} = {$g} EUR", 'brutto[]', '14,99', 10, 'brutto', null); } } $f->hidden_feld('option', 'rgg_ob'); $ko = new kontenrahmen(); $ko->dropdown_kontorahmenkonten('Kostenkonto', 'kostenkonto', 'kostenkonto', 'Geldkonto', $_SESSION['geldkonto_id'], ''); $f->check_box_js('sepa', '1', 'Gesamtbetrag in SEPA-Überweisungen vorbereiten', '', 'checked'); $f->send_button('btn_snd', "Gesamtrechnung erstellen"); $f->ende_formular(); } }
function kontrolle_bau_tab($kos_typ, $kos_id) { $f = new formular(); $f->fieldset('BAU', 'bauid'); $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id); echo "<h1>{$kos_bez}</h1>"; // echo "EDIS"; $b_arr = $this->get_bau_beleg_arr(); if (!is_array($b_arr)) { fehlermeldung_ausgeben("Keine Belege in BAU_BELEG DB hinterlegt"); } else { $anz = count($b_arr); for ($a = 0; $a < $anz; $a++) { $empty = true; $beleg_nr = $b_arr[$a]['BELEG_NR']; $r->rechnung_grunddaten_holen($beleg_nr); $table = "<h2><b>{$r->kurzbeschreibung}</b></h2>"; $pos_arr = $r->rechnungs_positionen_arr($beleg_nr); if (is_array($pos_arr)) { $anz_p = count($pos_arr); for ($p = 0; $p < $anz_p; $p++) { $art_nr = $pos_arr[$p]['ARTIKEL_NR']; $menge = $pos_arr[$p]['MENGE']; if (!$this->get_kontierung($art_nr, $menge, $kos_typ, $kos_id, $table)) { $empty = false; } } } if (!$empty) { echo $table; } } } $f->fieldset_ende(); }
function sepa_sammler_anzeigen($von_gk_id, $kat = null) { $arr = $this->get_sammler_arr($von_gk_id, $kat); if (is_array($arr)) { // echo '<pre>'; // print_r($arr); $anz = count($arr); echo "<hr>"; echo "<h2><b>{$kat}</b></h2>"; echo "<hr>"; echo "<table class=\"sortable\">"; echo "<thead><tr><th>EMPFÄNGER</th><th>VZWECK</th><th>ZUWEISUNG</th><th>IBAN</th><th>BIC</th><th>BETRAG</th><th>KONTO</th><th>OPTION</TH></tr></thead>"; // echo "<tr><th>$kat</th></tr>"; $sum = 0; for ($a = 0; $a < $anz; $a++) { $empf = $arr[$a]['BEGUENSTIGTER']; $vzweck = $arr[$a]['VZWECK']; $betrag = $arr[$a]['BETRAG']; $sum += $betrag; $iban = $arr[$a]['IBAN']; $bic = $arr[$a]['BIC']; $konto = $arr[$a]['KONTO']; $z = $a + 1; $dat = $arr[$a]['DAT']; $kos_typ = $arr[$a]['KOS_TYP']; $kos_id = $arr[$a]['KOS_ID']; $re = new rechnung(); $kos_bez = $re->kostentraeger_ermitteln($kos_typ, $kos_id); $kos_bez1 = "{$kos_typ}: {$kos_bez}"; $link_del = "<a href=\"?daten=sepa&option=sepa_datensatz_del&dat={$dat}\">Entfernen</a>"; echo "<tr><td>{$z}. {$empf}</td><td>{$vzweck}</td><td>{$kos_bez1}</td><td>{$iban}</td><td>{$bic}</td><td>{$betrag}</td><td>{$konto}</td><td>{$link_del}</td></tr>"; } echo "<tfoot><tr><th colspan=\"3\">SUMME</th><th><th>{$sum}</th><th></th><th></th></tr></tfoot>"; echo "</table>"; return true; } else { fehlermeldung_ausgeben("Keine {$kat} im SEPA-Ü-Sammler"); } }
function footer_info($typ, $id) { $result = mysql_query("SELECT * FROM FOOTER_ZEILE WHERE FOOTER_TYP='{$typ}' && FOOTER_TYP_ID='{$id}' && AKTUELL='1' ORDER BY FOOTER_ID ASC LIMIT 0,1"); $row = mysql_fetch_assoc($result); $this->footer_typ = $row['FOOTER_TYP']; $this->footer_typ_id = $row['FOOTER_TYP_ID']; $this->zahlungshinweis = str_replace("<br>", "\n", $row['ZAHLUNGSHINWEIS']); $this->zahlungshinweis_org = $row['ZAHLUNGSHINWEIS']; $this->zeile1 = $row['ZEILE1']; $this->zeile2 = $row['ZEILE2']; $this->header_zeile = $row['HEADER']; $r = new rechnung(); $this->footer_partner = $r->kostentraeger_ermitteln($this->footer_typ, $this->footer_typ_id); }
function get_zuweisung_string_kurz($geldkonto_id) { $arr = $this->get_zuweisung_arr($geldkonto_id); // print_r($arr); if (is_array($arr)) { $anz = count($arr); $kos_bez_alle = ''; for ($a = 0; $a < $anz; $a++) { $kos_typ = $arr[$a]['KOSTENTRAEGER_TYP']; $kos_id = $arr[$a]['KOSTENTRAEGER_ID']; if ($kos_typ != 'Eigentuemer') { $r = new rechnung(); $kos_bez_alle .= $r->kostentraeger_ermitteln($kos_typ, $kos_id) . ', '; } else { $weg = new weg(); $weg->get_eigentumer_id_infos4($kos_id); $kos_bez_alle .= $weg->einheit_kurzname . ', '; } if ($a == $anz - 1) { $kos_bez_alle = substr($kos_bez_alle, 0, -2); } } return $kos_bez_alle; } else { return 'Keine Zuweisung'; } }
function stunden_suchen($benutzer_id, $gewerk_id, $kos_typ, $kos_bez, $adatum, $edatum) { // echo "$benutzer_id, $gewerk_id, $kos_typ, $kos_bez, $adatum, $edatum"; $b = new buchen(); $r = new rechnung(); $von = date_german2mysql($adatum); $bis = date_german2mysql($edatum); $kos_id = $b->kostentraeger_id_ermitteln($kos_typ, $kos_bez); if (!$kos_id) { // die("Kostentraeger unbekannt!"); $kos_id = '%'; } if (!$kos_typ) { // die("Kostentraeger unbekannt!"); $kos_typ = '%'; } if ($kos_typ == '%') { $kos_typ_db = ''; } else { $kos_typ_db = "&& KOSTENTRAEGER_TYP LIKE '{$kos_typ}'"; } if ($kos_id == '%') { $kos_id_db = ''; } else { $kos_id_db = "&& KOSTENTRAEGER_ID = '{$kos_id}'"; } /* Fall 1 Alle auf einer Baustelle */ if ($benutzer_id == 'Alle' && $gewerk_id == 'Alle') { $db_abfrage = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, STUNDENZETTEL.BENUTZER_ID, benutzername, STUNDENSATZ, SUM( DAUER_MIN ) /60 AS STD, STUNDENSATZ * ( SUM( DAUER_MIN ) /60 ) AS LEISTUNG_EUR\nFROM `STUNDENZETTEL_POS` JOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID )\nJOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id )\nWHERE STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' {$kos_typ_db} {$kos_id_db} && DATUM BETWEEN '{$von}' AND '{$bis}'\nGROUP BY STUNDENZETTEL.BENUTZER_ID\nORDER BY GEWERK_ID ASC, STD DESC"; $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { echo "<table>"; echo "<tr><th>{$kos_bez} | {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table class=\"sortable\">"; echo "<tr><th>Mitarbeiter</th><th>Stunden</th><th>Leistung</th><th>ZUWEISUNG</th></tr>"; $g_summe = 0; $g_summe_std = 0; while ($row = mysql_fetch_assoc($result)) { $my_arr[] = $row; $benutzername = $row['benutzername']; $mitarbeiter_ids[] = $row['BENUTZER_ID']; $std = nummer_punkt2komma_t($row['STD']); $eur = nummer_punkt2komma_t($row['LEISTUNG_EUR']); $kostentraeger_typ = $row['KOSTENTRAEGER_TYP']; $kostentraeger_id = $row['KOSTENTRAEGER_ID']; $r = new rechnung(); $kosten_bez = $r->kostentraeger_ermitteln($kostentraeger_typ, $kostentraeger_id); echo "<tr><td>{$benutzername}</td><td>{$std} Std.</td><td>{$eur} €</td><td>{$kosten_bez}</td></tr>"; $g_summe_std += $row['STD']; $g_summe += $row['LEISTUNG_EUR']; } $g_summe_a = nummer_punkt2komma_t($g_summe); $g_summe_std_a = nummer_punkt2komma_t($g_summe_std); echo "<tfoot><tr class=\"zeile2\"><td>Gesamt</td><td>{$g_summe_std_a} Std.</td><td>{$g_summe_a} €</td><td></td></tfoot>"; echo "</table>"; $db_abfrage = "SELECT GEWERKE.BEZEICHNUNG, SUM( DAUER_MIN /60) AS STD, SUM(STUNDENSATZ *DAUER_MIN /60 ) AS LEISTUNG_EUR\nFROM `STUNDENZETTEL_POS`\nJOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID )\nJOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id )\nJOIN GEWERKE ON ( BENUTZER.GEWERK_ID = GEWERKE.G_ID )\nWHERE STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' {$kos_typ_db} {$kos_id_db} && DATUM BETWEEN '{$von}' AND '{$bis}'\nGROUP BY G_ID\nORDER BY STD DESC \n"; $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { echo "<table class=\"sortable\">"; echo "<tr><th>GEWERK</th><th>Stunden</th><th>Leistung</th></tr>"; $g_summe = 0; $g_summe_std = 0; while ($row = mysql_fetch_assoc($result)) { $my_arr[] = $row; $bez = $row['BEZEICHNUNG']; $std = nummer_punkt2komma_t($row['STD']); $eur = nummer_punkt2komma_t($row['LEISTUNG_EUR']); echo "<tr><td>{$bez}</td><td>{$std} Std.</td><td>{$eur} €</td></tr>"; $g_summe_std += $row['STD']; $g_summe += $row['LEISTUNG_EUR']; } $g_summe_a = nummer_punkt2komma_t($g_summe); $g_summe_std_a = nummer_punkt2komma_t($g_summe_std); echo "<tfoot><tr class=\"zeile2\"><td>Gesamt</td><td>{$g_summe_std_a} Std.</td><td>{$g_summe_a} €</td></td></tfoot>"; echo "</table>"; } $anz = count($mitarbeiter_ids); // echo "MA $anz"; for ($a = 0; $a < $anz; $a++) { $m_id = $mitarbeiter_ids[$a]; $db_abfrage1 = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, BENUTZER.BENUTZER_ID, benutzername, DATUM, BEGINN, ENDE, DAUER_MIN, DAUER_MIN/60 AS STUNDEN, LEISTUNG_ID, BEZEICHNUNG FROM `STUNDENZETTEL_POS` \nJOIN STUNDENZETTEL ON \n(STUNDENZETTEL_POS.ZETTEL_ID=STUNDENZETTEL.ZETTEL_ID)\nJOIN BENUTZER ON (STUNDENZETTEL.BENUTZER_ID=BENUTZER.BENUTZER_ID)\nJOIN LEISTUNGSKATALOG ON (LEISTUNG_ID=LK_ID)\nWHERE STUNDENZETTEL_POS.AKTUELL = '1' && STUNDENZETTEL.AKTUELL = '1' && DATUM BETWEEN '{$von}' AND '{$bis}' && STUNDENZETTEL.BENUTZER_ID='{$m_id}' {$kos_typ_db} {$kos_id_db} ORDER BY DATUM"; // echo $db_abfrage1; $result1 = mysql_query($db_abfrage1) or die(mysql_error()); $numrows = mysql_numrows($result1); // echo "2 teil $numrows"; if ($numrows) { $bb = new benutzer(); $bb->get_benutzer_infos($m_id); $benutzername = $bb->benutzername; echo "<table>"; echo "<tr><th>{$kos_bez} | Mitarbeiter {$benutzername} | Zeitraum: {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table>"; echo "<tr><th>DATUM</th><th>ZEIT</th><th>Dauer</th><th>Leistung</th><th>ZUWEISUNG</th></tr>"; while ($row1 = mysql_fetch_assoc($result1)) { $datum_m = date_mysql2german($row1['DATUM']); $beginn = $row1['BEGINN']; $ende = $row1['ENDE']; $stunden = nummer_punkt2komma_t($row1['STUNDEN']); $d_min = $row1['DAUER_MIN']; $lbez = $row1['BEZEICHNUNG']; $kostentraeger_typ = $row1['KOSTENTRAEGER_TYP']; $kostentraeger_id = $row1['KOSTENTRAEGER_ID']; $r = new rechnung(); $kosten_bez = $r->kostentraeger_ermitteln($kostentraeger_typ, $kostentraeger_id); echo "<tr><td>{$datum_m}</td><td>{$beginn} - {$ende}</td><td>{$d_min} Min. / {$stunden} Std.</td><td>{$lbez}</td><td>{$kosten_bez}</td></tr>"; } echo "</table>"; } } } } /* Fall 2 - Ein mitarbeiter nur */ if ($benutzer_id != 'Alle') { $db_abfrage = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, STUNDENZETTEL.BENUTZER_ID, benutzername, STUNDENSATZ, SUM( DAUER_MIN ) /60 AS STD, STUNDENSATZ * ( SUM( DAUER_MIN ) /60 ) AS LEISTUNG_EUR\nFROM `STUNDENZETTEL_POS`\nJOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID )\nJOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id )\nWHERE STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' && STUNDENZETTEL.BENUTZER_ID = '{$benutzer_id}'\n&& DATUM BETWEEN '{$von}' AND '{$bis}' {$kos_typ_db} {$kos_id_db} \nGROUP BY STUNDENZETTEL.BENUTZER_ID LIMIT 0 , 1"; $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { echo "<table>"; echo "<tr><th>{$kos_bez} | {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table>"; echo "<tr><th>Mitarbeiter</th><th>Stunden</th><th>Leistung</th></tr>"; while ($row = mysql_fetch_assoc($result)) { $my_arr[] = $row; $benutzername = $row['benutzername']; $std = nummer_punkt2komma_t($row['STD']); $eur = nummer_punkt2komma_t($row['LEISTUNG_EUR']); echo "<tr><td>{$benutzername}</td><td>{$std} Std.</td><td>{$eur} €</td></tr>"; } echo "</table>"; } $db_abfrage1 = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID,BENUTZER.BENUTZER_ID, benutzername, DATUM, BEGINN, ENDE, DAUER_MIN, DAUER_MIN/60 AS STUNDEN, LEISTUNG_ID, BEZEICHNUNG FROM `STUNDENZETTEL_POS` \nJOIN STUNDENZETTEL ON \n(STUNDENZETTEL_POS.ZETTEL_ID=STUNDENZETTEL.ZETTEL_ID)\nJOIN BENUTZER ON (STUNDENZETTEL.BENUTZER_ID=BENUTZER.BENUTZER_ID)\nJOIN LEISTUNGSKATALOG ON (LEISTUNG_ID=LK_ID)\nWHERE STUNDENZETTEL_POS.AKTUELL = '1' && \nSTUNDENZETTEL.AKTUELL = '1' && \nDATUM BETWEEN '{$von}' AND '{$bis}' && STUNDENZETTEL.BENUTZER_ID='{$benutzer_id}' {$kos_typ_db} {$kos_id_db} ORDER BY DATUM"; // echo $db_abfrage1; $result1 = mysql_query($db_abfrage1) or die(mysql_error()); $numrows = mysql_numrows($result1); // echo "2 teil $numrows"; if ($numrows) { echo "<table>"; echo "<tr><th>{$kos_bez} | Mitarbeiter {$benutzername} | Zeitraum: {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table>"; echo "<tr><th>DATUM</th><th>Dauer</th><th>Leistung</th><th>ZUWEISUNG</th></tr>"; while ($row1 = mysql_fetch_assoc($result1)) { $benutzername = $row1['benutzername']; $datum_m = date_mysql2german($row1['DATUM']); $beginn = $row1['BEGINN']; $ende = $row1['ENDE']; $stunden = nummer_punkt2komma_t($row1['STUNDEN']); $d_min = $row1['DAUER_MIN']; $lbez = $row1['BEZEICHNUNG']; $kostentraeger_typ = $row1['KOSTENTRAEGER_TYP']; $kostentraeger_id = $row1['KOSTENTRAEGER_ID']; $r = new rechnung(); $kosten_bez = $r->kostentraeger_ermitteln($kostentraeger_typ, $kostentraeger_id); echo "<tr><td>{$datum_m}</td><td>{$d_min} Min. / {$stunden} Std.</td><td>{$lbez}</td><td>{$kosten_bez}</td></tr>"; } echo "</table>"; } } /* Fall 3 - Ein Gewerk, alle Mitarbeiter */ if ($benutzer_id == 'Alle' && $gewerk_id != 'Alle') { /* * $db_abfrage = "SELECT GEWERKE.BEZEICHNUNG, SUM( DAUER_MIN ) /60 AS STD, STUNDENSATZ * ( SUM( DAUER_MIN ) /60 ) AS LEISTUNG_EUR * FROM `STUNDENZETTEL_POS` * JOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID ) * JOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id ) * JOIN GEWERKE ON ( BENUTZER.GEWERK_ID = GEWERKE.G_ID ) * WHERE STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' && KOSTENTRAEGER_TYP LIKE '$kos_typ' && KOSTENTRAEGER_ID LIKE '$kos_id' && G_ID='$gewerk_id' * GROUP BY G_ID * ORDER BY STD DESC"; */ $db_abfrage = "SELECT GEWERKE.BEZEICHNUNG, SUM( DAUER_MIN /60 ) AS STD, SUM( BENUTZER.STUNDENSATZ * DAUER_MIN /60 ) AS LEISTUNG_EUR\nFROM `STUNDENZETTEL_POS`\nJOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID )\nJOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id )\nJOIN GEWERKE ON ( BENUTZER.GEWERK_ID = GEWERKE.G_ID )\nWHERE STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' && KOSTENTRAEGER_TYP LIKE '{$kos_typ}' && KOSTENTRAEGER_ID LIKE '{$kos_id}' && G_ID = '{$gewerk_id}'\n&& DATUM BETWEEN '{$von}' AND '{$bis}' {$kos_typ_db} {$kos_id_db}\nORDER BY STD DESC, DATUM "; $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { echo "<table>"; echo "<tr><th>{$kos_bez} | {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table class=\"sortable\">"; echo "<tr><th>GEWERK</th><th>Stunden</th><th>Leistung</th></tr>"; $g_summe = 0; $g_summe_std = 0; while ($row = mysql_fetch_assoc($result)) { $my_arr[] = $row; $bez = $row['BEZEICHNUNG']; $std = nummer_punkt2komma_t($row['STD']); $eur = nummer_punkt2komma_t($row['LEISTUNG_EUR']); echo "<tr><td>{$bez}</td><td>{$std} Std.</td><td>{$eur} €</td></tr>"; $g_summe_std += $row['STD']; $g_summe += $row['LEISTUNG_EUR']; } $g_summe_a = nummer_punkt2komma_t($g_summe); $g_summe_std_a = nummer_punkt2komma_t($g_summe_std); echo "<tfoot><tr class=\"zeile2\"><td>Gesamt</td><td>{$g_summe_std_a} Std.</td><td>{$g_summe_a} €</td></td></tfoot>"; echo "</table>"; $db_abfrage = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, STUNDENZETTEL.BENUTZER_ID, benutzername, STUNDENSATZ, SUM( DAUER_MIN ) /60 AS STD, STUNDENSATZ * ( SUM( DAUER_MIN ) /60 ) AS LEISTUNG_EUR\nFROM `STUNDENZETTEL_POS` JOIN STUNDENZETTEL ON ( STUNDENZETTEL.ZETTEL_ID = STUNDENZETTEL_POS.ZETTEL_ID )\nJOIN BENUTZER ON ( STUNDENZETTEL.BENUTZER_ID = BENUTZER.benutzer_id )\nWHERE GEWERK_ID='{$gewerk_id}' && STUNDENZETTEL.AKTUELL = '1' && STUNDENZETTEL_POS.AKTUELL = '1' && DATUM BETWEEN '{$von}' AND '{$bis}' {$kos_typ_db} {$kos_id_db} \nGROUP BY STUNDENZETTEL.BENUTZER_ID ORDER BY DATUM ASC, STD DESC, GEWERK_ID ASC"; $result = mysql_query($db_abfrage) or die(mysql_error()); $numrows = mysql_numrows($result); if ($numrows) { echo "<br><table class=\"sortable\">"; echo "<tr><th>Mitarbeiter</th><th>Stunden</th><th>Leistung</th></tr>"; $g_summe = 0; $g_summe_std = 0; while ($row = mysql_fetch_assoc($result)) { $my_arr[] = $row; $mitarbeiter_ids[] = $row['BENUTZER_ID']; $benutzername = $row['benutzername']; $std = nummer_punkt2komma_t($row['STD']); $eur = nummer_punkt2komma_t($row['LEISTUNG_EUR']); echo "<tr><td>{$benutzername}</td><td>{$std} Std.</td><td>{$eur} €</td></tr>"; $g_summe_std += $row['STD']; $g_summe += $row['LEISTUNG_EUR']; } $g_summe_a = nummer_punkt2komma_t($g_summe); $g_summe_std_a = nummer_punkt2komma_t($g_summe_std); echo "<tfoot><tr class=\"zeile2\"><td>Gesamt</td><td>{$g_summe_std_a} Std.</td><td>{$g_summe_a} €</td></td></tfoot>"; echo "</table>"; } $anz = count($mitarbeiter_ids); // echo "MA $anz"; for ($a = 0; $a < $anz; $a++) { $m_id = $mitarbeiter_ids[$a]; $db_abfrage1 = "SELECT KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, BENUTZER.BENUTZER_ID, benutzername, DATUM, BEGINN, ENDE, DAUER_MIN, DAUER_MIN/60 AS STUNDEN, LEISTUNG_ID, BEZEICHNUNG FROM `STUNDENZETTEL_POS` \nJOIN STUNDENZETTEL ON \n(STUNDENZETTEL_POS.ZETTEL_ID=STUNDENZETTEL.ZETTEL_ID)\nJOIN BENUTZER ON (STUNDENZETTEL.BENUTZER_ID=BENUTZER.BENUTZER_ID)\nJOIN LEISTUNGSKATALOG ON (LEISTUNG_ID=LK_ID)\nWHERE STUNDENZETTEL_POS.AKTUELL = '1' && STUNDENZETTEL.AKTUELL = '1' && \nDATUM BETWEEN '{$von}' AND '{$bis}' && STUNDENZETTEL.BENUTZER_ID='{$m_id}' {$kos_typ_db} {$kos_id_db} ORDER BY DATUM"; // echo $db_abfrage1; $result1 = mysql_query($db_abfrage1) or die(mysql_error()); $numrows = mysql_numrows($result1); // echo "2 teil $numrows"; if ($numrows) { $bb = new benutzer(); $bb->get_benutzer_infos($m_id); $benutzername = $bb->benutzername; echo "<table>"; echo "<tr><th>{$kos_bez} | Mitarbeiter {$benutzername} | Zeitraum: {$adatum} - {$edatum}</tr>"; echo "</table>"; echo "<table>"; echo "<tr><th>DATUM</th><th>Dauer</th><th>Leistung</th><th>Zuweisung</th></tr>"; while ($row1 = mysql_fetch_assoc($result1)) { $datum_m = date_mysql2german($row1['DATUM']); $beginn = $row1['BEGINN']; $ende = $row1['ENDE']; $stunden = nummer_punkt2komma_t($row1['STUNDEN']); $d_min = $row1['DAUER_MIN']; $lbez = $row1['BEZEICHNUNG']; $kostentraeger_typ = $row1['KOSTENTRAEGER_TYP']; $kostentraeger_id = $row1['KOSTENTRAEGER_ID']; $r = new rechnung(); $kosten_bez = $r->kostentraeger_ermitteln($kostentraeger_typ, $kostentraeger_id); echo "<tr><td>{$datum_m}</td><td>{$d_min} Min. / {$stunden} Std.</td><td>{$lbez}</td><td>{$kosten_bez}</td></tr>"; } echo "</table>"; } } } } }
function geraete_infos($plan_id, $geraet_id) { unset($this->geraet_id); unset($this->baujahr); unset($this->bezeichnung); unset($this->hersteller); unset($this->im_einsatz); unset($this->kostentraeger_typ); unset($this->kostentraeger_id); unset($this->kostentraeger_bez); unset($this->wartungsdatum); unset($this->benutzer_id); unset($this->bemerkung); unset($this->gewartet_von); $result = mysql_query("SELECT * FROM `W_GERAETE` WHERE `GERAETE_ID` ='{$geraet_id}' AND `AKTUELL` = '1' LIMIT 0,1"); $numrows = mysql_numrows($result); if ($numrows) { $row = mysql_fetch_assoc($result); $this->geraet_id = $geraet_id; $this->baujahr = $row['BAUJAHR']; $this->bezeichnung = $row['BEZEICHNUNG']; $this->hersteller = $row['HERSTELLER']; $this->im_einsatz = date_mysql2german($row['IM_EINSATZ']); $this->kostentraeger_typ = $row['KOSTENTRAEGER_TYP']; $this->kostentraeger_id = $row['KOSTENTRAEGER_ID']; $r = new rechnung(); $this->kostentraeger_bez = $r->kostentraeger_ermitteln($this->kostentraeger_typ, $this->kostentraeger_id); $this->letzte_wartung_infos($plan_id, $geraet_id); } else { return false; } }
function kontohochrechnung($datum_bis, $zins_pj, $kap_prozent, $soli_prozent) { $bg = new berlussimo_global(); $link = '?daten=kautionen&option=kontohochrechnung'; $jahr = date("Y"); // echo "$kostentraeger_typ, $kostentraeger_id, $datum_bis, $zins_pj, $kap_prozent, $soli_prozent"; // $zahlungen_arr = $this->kautionszahlungen_alle_arr(''); // $zahlungen_arr = $this->kautionszahlungen_alle_arr(1000); $summe = 0.0; $summe_verzinst = 0.0; if (!empty($_REQUEST[monat]) && !empty($_REQUEST[jahr])) { if (empty($_REQUEST[tag])) { $l_tag = letzter_tag_im_monat($_REQUEST[monat], $_REQUEST[jahr]); } else { $l_tag = $_REQUEST[tag]; } $datum_bis = "{$_REQUEST['jahr']}-{$_REQUEST['monat']}-{$l_tag}"; $jahr = $_REQUEST[jahr]; } $bg->monate_jahres_links($jahr, $link); $datum_bis_a = date_mysql2german($datum_bis); $zahlungen_arr = $this->kautionszahlungen_alle_arr_bis($datum_bis); $pdf_link = "<a href=\"?daten=kautionen&option=kontohochrechnung&datum_bis={$datum_bis_a}&pdf\"><img src=\"css/pdf.png\"></a>"; if (is_array($zahlungen_arr)) { echo "<table>"; // echo "<tr class=\"feldernamen\"><td colspan=\"7\">$mv->einheit_kurzname $mv->personen_name_string</td></tr>"; echo "<tr><th colspan=\"9\">{$pdf_link}</th></tr>"; echo "<tr><th>BESCHREIBUNG</th><th>Einheit</th><th>EINZAHLUNG</t><th>ZINSTAGE</th><th>BETRAG</th><th>VERZINST BIS {$datum_bis_a}</th><th>KAP {$kap_prozent} %</th><th>SOLI {$soli_prozent} %</th><th>BETRAG</th></tr>"; $anzahl_zahlungen = count($zahlungen_arr); for ($a = 0; $a < $anzahl_zahlungen; $a++) { $kostentraeger_typ = $zahlungen_arr[$a]['KOSTENTRAEGER_TYP']; $kostentraeger_id = $zahlungen_arr[$a]['KOSTENTRAEGER_ID']; $b_text = $zahlungen_arr[$a]['VERWENDUNGSZWECK']; if ($kostentraeger_typ == 'MIETVERTRAG' or $kostentraeger_typ == 'Mietvertrag') { $mv = new mietvertraege(); $mv->get_mietvertrag_infos_aktuell($kostentraeger_id); } $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($kostentraeger_typ, $kostentraeger_id); /* * if($mv->mietvertrag_aktuell == false){ * $datum_bis = $mv->mietvertrag_bis; * } */ $datum_von = $zahlungen_arr[$a]['DATUM']; $betrag = $zahlungen_arr[$a]['BETRAG']; $datum_von_a = date_mysql2german($datum_von); $zinstage = $this->zins_tage($datum_von, $datum_bis); $betrag_verzinst = nummer_runden($betrag * $zins_pj * $zinstage / 360 + $betrag, 3); $kap = nummer_runden(($betrag_verzinst - $betrag) * $kap_prozent / 100, 3); $soli = nummer_runden($kap * $soli_prozent / 100, 3); $betrag_rein = nummer_runden($betrag_verzinst - $kap - $soli, 2); $summe_kos_id += $betrag_rein; $summe_kos_id_a = nummer_punkt2komma($summe_kos_id); // if($kostentraeger_typ == 'MIETVERTRAG' or $kostentraeger_typ == 'Mietvertrag'){ if ($mv->einheit_kurzname == '') { $mv->einheit_kurzname = $b_text; } echo "<tr><td>{$kos_bez}</td><td>{$mv->einheit_kurzname}</td><td>{$datum_von_a}</td><td>{$zinstage}</td><td>{$betrag}</td><td>{$betrag_verzinst}</td><td>{$kap}</td><td>{$soli}</td><td>{$betrag_rein}</td></tr>"; $tab_arr[$a]['BEZ'] = $kos_bez; $tab_arr[$a]['VZWECK'] = $mv->einheit_kurzname; $tab_arr[$a]['DATUM'] = $datum_von_a; $tab_arr[$a]['BETRAG'] = $betrag; $tab_arr[$a]['BETRAG_A'] = nummer_runden($betrag_rein, 2); /* * #echo "<tr><td colspan=\"8\">$this->temp_kos_typ:$kostentraeger_typ $this->temp_kos_id:$kostentraeger_id</td></tr>"; * if(($this->temp_kos_typ == $kostentraeger_typ) && ($this->temp_kos_id == $kostentraeger_id)){ * echo "<tr><td>$kos_bez</td><td>$datum_von_a</td><td>$zinstage</td><td>$betrag</td><td>$betrag_verzinst</td><td>$kap</td><td>$soli</td><td>$betrag_rein</td></tr>"; * #echo "<tr><td><b>$mv->einheit_kurzname $mv->personen_name_string</td><td>$datum_von_a</td><td>$zinstage</td><td>$betrag</td><td>$betrag_verzinst</td><td>$kap</td><td>$soli</td><td>$betrag_rein</td></tr>"; * }else{ * echo "<tr><td>$kos_bez</td><td>$datum_von_a</td><td>$zinstage</td><td>$betrag</td><td>$betrag_verzinst</td><td>$kap</td><td>$soli</td><td>$betrag_rein</td></tr>"; * echo "<tr><td colspan=\"8\"><b>$kos_bez</td></tr>"; * } */ $summe = $summe + $betrag; $summe_verzinst = $summe_verzinst + $betrag_verzinst; $mv->einheit_kurzname = ''; // } } // end for $summe = nummer_kuerzen($summe, 3); $kap_g = ($summe_verzinst - $summe) * ($kap_prozent / 100); $soli_g = $kap_g * $soli_prozent / 100; // echo "$summe $summe_verzinst $kap_g $soli_g<br>"; $endsumme = nummer_runden($summe_verzinst - $kap_g - $soli_g, 2); echo "<tfoot><tr><th colspan=\"5\">{$datum_bis_a}</th><th>SUMME VERZINST</th><th>{$summe_verzinst}</th><th>SUMME O. KAP+SOLI</t><th>{$endsumme}</th></tr></tfoot>"; /* Summe letzte Zeile */ $tab_arr[$a + 1]['BEZ'] = $datum_bis_a; $tab_arr[$a + 1]['VZWECK'] = "Summen hochgerechnet"; $tab_arr[$a + 1]['BETRAG_A'] = $endsumme; $this->anfangs_summe = $summe; $this->end_summe = $endsumme; $this->kap_g = $kap_g; $this->soli_g = $soli_g; echo "</table>"; // echo "<b>ENDSUMME $endsumme</b><br>"; if (isset($_REQUEST[pdf])) { //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); $this->footer_zahlungshinweis = $bpdf->zahlungshinweis; // $pdf->ezStopPageNumbers(); //seitennummerirung beenden $p = new partners(); $p->get_partner_info($_SESSION[partner_id]); $cols = array('BEZ' => "<b>ZUORDNUNG</b>", 'VZWECK' => "<b>VERWENDUNG\nBUCHUNGSTEXT</b>", 'DATUM' => "<b>DATUM</b>", 'BETRAG' => "<b>BETRAG</b>", 'BETRAG_A' => "<b>BETRAG \n {$datum_bis_a}</b>"); $pdf->ezSetDy(-10); $pdf->ezTable($tab_arr, $cols, "", array('showHeadings' => 1, 'shaded' => 1, 'showLines' => 1, 'titleFontSize' => 8, 'fontSize' => 7, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 500, 'rowGap' => 0.6)); ob_clean(); // ausgabepuffer leeren $pdf->ezStream(); } } else { echo "keine kautionszahlungen gebucht"; } }
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; }
$clean_arr['RECHNUNGSDATUM'] = $uebernahme_arr['RECHNUNGSDATUM']; $clean_arr['RECHNUNG_AUSSTELLER_TYP'] = $uebernahme_arr['RECHNUNG_AUSSTELLER_TYP']; $clean_arr['RECHNUNG_AUSSTELLER_ID'] = $uebernahme_arr['RECHNUNG_AUSSTELLER_ID']; $clean_arr['RECHNUNG_EMPFAENGER_TYP'] = $uebernahme_arr['RECHNUNG_EMPFAENGER_TYP']; $clean_arr['RECHNUNG_EMPFAENGER_ID'] = $uebernahme_arr['RECHNUNG_EMPFAENGER_ID']; $clean_arr['RECHNUNG_FAELLIG_AM'] = $uebernahme_arr['RECHNUNG_FAELLIG_AM']; $clean_arr['EMPFANGS_GELD_KONTO'] = $uebernahme_arr['EMPFANGS_GELD_KONTO']; $kurzbeschreibung = $_POST['kurzbeschreibung']; $objekt_info = new objekt(); if ($clean_arr['RECHNUNG_EMPFAENGER_TYP'] == 'Objekt') { $objekt_info->get_objekt_name($clean_arr['RECHNUNG_EMPFAENGER_ID']); $objekt_info->get_objekt_eigentuemer_partner($clean_arr['RECHNUNG_EMPFAENGER_ID']); $clean_arr['kurzbeschreibung'] = "Rechnung für {$objekt_info->objekt_name}<br>{$kurzbeschreibung}"; } if ($clean_arr['RECHNUNG_EMPFAENGER_TYP'] == 'Haus') { $haus_info = $r->kostentraeger_ermitteln('Haus', $clean_arr['RECHNUNG_EMPFAENGER_ID']); $clean_arr['kurzbeschreibung'] = "Rechnung für Haus {$haus_info}<br>{$kurzbeschreibung}"; } if ($clean_arr['RECHNUNG_EMPFAENGER_TYP'] == 'Einheit') { $einheit = $r->kostentraeger_ermitteln('Einheit', $clean_arr['RECHNUNG_EMPFAENGER_ID']); $clean_arr['kurzbeschreibung'] = "Rechnung für Einheit {$einheit}<br>{$kurzbeschreibung}"; } if ($clean_arr['RECHNUNG_EMPFAENGER_TYP'] == 'Lager') { $lager_info = new lager(); $lager_info->lager_name = $lager_info->lager_bezeichnung($clean_arr['RECHNUNG_EMPFAENGER_ID']); $clean_arr['kurzbeschreibung'] = "Rechnung an Lager {$lager_info->lager_name}<br>{$kurzbeschreibung}"; } if ($clean_arr['RECHNUNG_EMPFAENGER_TYP'] == 'Partner') { $clean_arr['kurzbeschreibung'] = "Rechnung an Partner<br>{$kurzbeschreibung}"; } $netto_betrag = 0;
function artikel_suche_einkauf($artikel_nr, $empfaenger_typ, $empfaenger_id) { $r = new rechnung(); $bez = $r->kostentraeger_ermitteln($empfaenger_typ, $empfaenger_id); $result = mysql_query(" SELECT RECHNUNGSNUMMER, RECHNUNGSDATUM, RECHNUNGEN_POSITIONEN.BELEG_NR, U_BELEG_NR, POSITION, ART_LIEFERANT, ARTIKEL_NR, MENGE, PREIS\nFROM `RECHNUNGEN_POSITIONEN` , RECHNUNGEN\nWHERE `ARTIKEL_NR` LIKE '%{$artikel_nr}%'\nAND RECHNUNGEN.AKTUELL = '1'\nAND RECHNUNGEN_POSITIONEN.AKTUELL = '1'\nAND RECHNUNGEN.EMPFAENGER_TYP = '{$empfaenger_typ}' && RECHNUNGEN.EMPFAENGER_ID = '{$empfaenger_id}' && RECHNUNGEN_POSITIONEN.BELEG_NR = RECHNUNGEN.BELEG_NR"); $numrows = mysql_numrows($result); if ($numrows) { echo "<h3>Suchergebnis in Rechnungen von {$bez} zu: {$artikel_nr}</h3>"; echo "<table class=\"sortable\">"; echo "<tr><th>LIEFERANT</th><th>ARTIKELNR</th><th>RDATUM</th><th>RNR</th><th>POSITION</th><th>BEZEICHNUNG</th><th>MENGE EINGANG</th><th>MENGE RAUS</th><th>RESTMENGE</th><th>PREIS</th></tr>"; $g_menge = 0; $g_kontiert = 0; while ($row = mysql_fetch_assoc($result)) { $p = new partners(); $r_nr = $row[RECHNUNGSNUMMER]; $beleg_nr = $row[BELEG_NR]; $u_beleg_nr = $row[U_BELEG_NR]; $position = $row[POSITION]; $art_lieferant = $row[ART_LIEFERANT]; $p->get_partner_name($art_lieferant); $art_nr = $row[ARTIKEL_NR]; $menge = $row[MENGE]; $r = new rechnung(); $artikel_info_arr = $r->artikel_info($art_lieferant, $art_nr); $anz_bez = count($artikel_info_arr); $artikel_bez = $artikel_info_arr[0]['BEZEICHNUNG']; // print_r($artikel_info_arr); $kontierte_menge = nummer_punkt2komma($r->position_auf_kontierung_pruefen($beleg_nr, $position)); $g_kontiert += nummer_komma2punkt($kontierte_menge); $g_menge += $menge; $rest_menge_pos = nummer_punkt2komma($menge - nummer_komma2punkt($kontierte_menge)); $rdatum = date_mysql2german($row[RECHNUNGSDATUM]); $preis = $row[PREIS]; $r_link = "<a href=\"?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$beleg_nr}\">{$r_nr}</a>"; echo "<tr><td>{$p->partner_name}</td><td>{$art_nr}</td><td>{$rdatum}</td><td>{$r_link}</td><td>{$position}</td><td>{$artikel_bez}</td><td>{$menge}</td><td>{$kontierte_menge}</td><td>{$rest_menge_pos}</td><td>{$preis}</td></tr>"; } $g_rest = nummer_punkt2komma($g_menge - $g_kontiert); $g_menge = nummer_punkt2komma($g_menge); $g_kontiert = nummer_punkt2komma($g_kontiert); echo "<tfoot><tr ><td colspan=\"5\"><b>BESTAND</b></td><td><b>{$g_menge}</b></td><td><b>{$g_kontiert}</b></td><td><b>{$g_rest}</b></td><td></td></tr></tfoot>"; echo "</table>"; } else { echo "KEINE ARTIKEL GEFUNDEN {$artikel_nr}, {$empfaenger_typ}, {$empfaenger_id}"; } }
function get_kos_bez($t_id) { $result = mysql_query("SELECT KOS_TYP, KOS_ID FROM TODO_LISTE WHERE T_ID='{$t_id}' && AKTUELL='1' ORDER BY T_ID DESC LIMIT 0,1"); $row = mysql_fetch_assoc($result); $kos_typ = $row['KOS_TYP']; $kos_id = $row['KOS_ID']; $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id); return $kos_bez; }
$todo = new todo(); $auftraege_arr = $todo->get_alle_auftraege(0); // print_r($auftraege_arr); $anz_a = count($auftraege_arr); // die("ANZAHL :$anz_a"); for ($a = 0; $a < $anz_a; $a++) { $t_id = $auftraege_arr[$a]['T_ID']; $datum = $auftraege_arr[$a]['ERSTELLT']; $text = $auftraege_arr[$a]['TEXT']; $text_k = substr($text, 0, 20); // echo "TEXT:$text<br>"; echo "TEXTK:{$text_k}<br>"; $kos_typ = $auftraege_arr[$a]['KOS_TYP']; $kos_id = $auftraege_arr[$a]['KOS_ID']; $r = new rechnung(); $kos_bez = $r->kostentraeger_ermitteln($kos_typ, $kos_id); $data['name'] = 'BerlussimoAPI'; $data['email'] = '*****@*****.**'; $data['subject'] = utf8_encode($text); $data['message'] = utf8_encode($text); $data['ip'] = $_SERVER['REMOTE_ADDR']; $data['body'] = 'BODY MANUAL'; $data['zuordnung'] = $kos_bez; $data['kos_typ'] = $kos_typ; $data['kos_id'] = $kos_id; $data['created'] = $datum; $data['attachments'] = array(); // print_r($data); // die(); /* * Add in attachments here if necessary