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 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; }
$form->hidden_feld("option", "rechnung_erfassen2"); $form->send_button("submit_rechnung2", "Rechnung speichern"); echo "<br>"; backlink(); } else { backlink(); } $form->ende_formular(); break; case "rechnung_erfassen2": $form = new mietkonto(); $form->erstelle_formular("Rechnungsdaten werden gespeichert", NULL); echo "<p><b>Gespeicherte Rechnungsdaten:</b></p>"; $clean_arr = post_array_bereinigen(); // $form->array_anzeigen($clean_arr); $rechnung = new rechnung(); $rechnung->rechnung_speichern($clean_arr); $form->ende_formular(); break; case "buchungsmaske_kasse": $form = new mietkonto(); $form->erstelle_formular("Buchungsformular Kasse {$_SESSION['kasse']}", NULL); $kasse = new kasse(); $kasse->buchungsmaske_kasse($_SESSION[kasse]); $form->ende_formular(); break; case "kassendaten_gesendet": $form = new mietkonto(); $form->erstelle_formular("Buchungsdaten überprüfen {$_SESSION['kasse']}", NULL); $kasse = new kasse(); // print_r($_POST);
case "meist_gekauft": $k = new katalog(); $arr_pos = $k->get_meistgekauft_arr($_SESSION['partner_id']); $partner_id = $_SESSION['partner_id']; /* * echo '<pre>'; * print_r($arr); */ $anz_pos = count($arr_pos); echo "<table class=\"sortable\">"; echo "<tr><th>RG</th><th>ARTIKEL</th><th>BEZ</th><th>MENGE</th><th>VE</th><th>BISHER</th><th>LPREIS</th><th>rabatt</th><th>UPREIS</th><th>ENT.</tr>"; for ($a = 0; $a < $anz_pos; $a++) { $art_nr = $arr_pos[$a]['ARTIKEL_NR']; $menge = $arr_pos[$a]['G_MENGE']; $rg = $arr_pos[$a]['BELEG_NR']; $r = new rechnung(); $art_arr = $r->artikel_info($partner_id, $art_nr); /* * echo '<pre>'; * print_r($art_arr); * die(); */ $ve = $art_arr[0]['EINHEIT']; $bez = $art_arr[0]['BEZEICHNUNG']; $lp = $art_arr[0]['LISTENPREIS']; $rabatt = $art_arr[0]['RABATT_SATZ']; $up = nummer_punkt2komma_t($lp / 100 * (100 - $rabatt)); $anz_bisher = $k->get_anz_bisher($art_nr, $partner_id); /* Preisentwicklungsinfos */ $ka = new katalog(); $ka->get_preis_entwicklung_infos($_SESSION['partner_id'], $art_nr);
$btext = $feld[6]; $betrag = nummer_komma2punkt($feld[7]); $auftraggeber_text = $feld[8] . ' ' . $feld[9]; $auftraggeber_ktonr = $feld[10]; $auftraggeber_blz = $feld[11]; // echo $array[$a].'<br>'; // echo "<tr><td>$auszugsnr</td><td>$buch_datum</td><td>$val_datum</td><td>$v_zweck</td><td>$btext</td><td>$betrag</td></tr>"; echo "<tr><td>{$val_datum}</td><td>{$v_zweck}</td><td>{$auftraggeber_text}<br>{$auftraggeber_ktonr}<br>{$auftraggeber_blz}<td>{$betrag}</td><td>"; $bb->dropdown_kostenrahmen_nr('Kostenkonto', 'kostenkonto', 'GELDKONTO', $geldkonto_id, ''); echo "</td>"; if ($a == $start) { $_zahlen_arr = gib_zahlen($v_zweck); if (is_array($_zahlen_arr)) { $anz_m = count($_zahlen_arr); for ($m = 0; $m < $anz_m; $m++) { $re = new rechnung(); if (is_array($re->rechnung_finden_nach_rnr($_zahlen_arr[$m]))) { $rnr_kurz = $_zahlen_arr[$m]; } } } // echo $rnr_kurz; if (empty($rnr_kurz)) { $rnr_kurz = null; } echo "<td>"; if ($betrag > 0) { $bb->dropdown_ra_buch('Partner', $partner_id, 200, $rnr_kurz); } else { $bb->dropdown_re_buch('Partner', $partner_id, 200, $rnr_kurz); }
function pdf_auftrag($id) { $this->get_aufgabe_alles($id); $pp = new benutzer(); $b_arr = $pp->get_user_info($_SESSION['benutzer_id']); $_SESSION['partner_id'] = $b_arr[0]['BP_PARTNER_ID']; if ($this->kos_typ == 'Einheit') { $kontaktdaten_mieter = $this->kontaktdaten_anzeigen_mieter($this->kos_id); $kontaktdaten_mieter = "<b>Einheit</b>: {$this->kos_bez}" . "\n" . str_replace('<br>', "\n", $kontaktdaten_mieter); } if ($this->kos_typ == 'Partner') { $p = new partners(); $p->get_partner_info($this->kos_id); $kontaktdaten_mieter = "{$p->partner_name}\n{$p->partner_strasse} {$p->partner_hausnr}\n{$p->partner_plz} {$p->partner_ort}\n"; $det_arr = $this->finde_detail_kontakt_arr('PARTNER_LIEFERANT', $this->kos_id); if (is_array($det_arr)) { $anzd = count($det_arr); for ($a = 0; $a < $anzd; $a++) { $dname = $this->html2txt($det_arr[$a]['DETAIL_NAME']); $dinhalt = $this->html2txt($det_arr[$a]['DETAIL_INHALT']); $kontaktdaten_mieter .= "\n{$dname}:{$dinhalt}"; } } } if ($this->kos_typ == 'Eigentuemer') { $weg = new weg(); $weg->get_eigentumer_id_infos2($this->kos_id); $miteigentuemer_namen = strip_tags($weg->eigentuemer_name_str_u); $kontaktdaten_mieter = "{$weg->haus_strasse} {$weg->haus_nummer}\n<b>{$weg->haus_plz} {$weg->haus_stadt}</b>\n\n"; for ($pe = 0; $pe < count($weg->eigentuemer_person_ids); $pe++) { $et_p_id = $weg->eigentuemer_person_ids[$pe]; $det_arr = $this->finde_detail_kontakt_arr('Person', $et_p_id); // echo strtoupper($this->kos_typ); $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['HRFRAU'])) . " "; $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['Nachname'])) . " "; $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['Vorname'])) . "\n"; if (is_array($det_arr)) { $anzd = count($det_arr); for ($ad = 0; $ad < $anzd; $ad++) { $dname = $this->html2txt($det_arr[$ad]['DETAIL_NAME']); $dinhalt = $this->html2txt($det_arr[$ad]['DETAIL_INHALT']); $kontaktdaten_mieter .= "{$dname}:{$dinhalt}\n"; } } $kontaktdaten_mieter .= "\n"; } } if ($this->kos_typ != 'Partner' && $this->kos_typ != 'Einheit' && $this->kos_typ != 'Eigentuemer') { if ($this->kos_typ == 'Haus') { $h = new haus(); $h->get_haus_info($this->kos_id); $kontaktdaten_mieter = "Haus:\n{$h->haus_strasse} {$h->haus_nummer}\n<b>{$h->haus_plz} {$h->haus_stadt}</b>"; } else { $d = new detail(); $kontaktdaten_mieter = $this->kos_bez; } } $kontaktdaten_mieter = str_replace('<br />', "\n", $kontaktdaten_mieter); $kontaktdaten_mieter = $this->html2txt($kontaktdaten_mieter); 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->Rectangle(250, 630, 305, 80); $pdf->addText(252, 700, 10, "Arbeitsauftrag Nr: <b>{$id}</b> an"); $pdf->addText(252, 685, 9, "<b>{$this->benutzer_typ}</b>: {$this->mitarbeiter_name} {$this->partner_ans}"); if ($this->benutzer_typ == 'Partner') { $pdf->addText(252, 675, 9, "<b>Fax: {$this->partner_fax}</b>"); $pdf->addText(375, 675, 9, "<b>Email: {$this->partner_email}</b>"); } $pdf->addText(252, 665, 8, "<b>Datum</b>: {$this->anzeigen_ab}"); if ($this->erledigt == '1') { $erledigt = 'JA'; } else { $erledigt = 'NEIN'; } $pdf->addText(252, 655, 8, "<b>AKUT</b>: {$this->akut}"); $pdf->addText(252, 645, 8, "<b>Erfasst</b>: {$this->verfasst_von}"); if ($this->kos_typ == 'Einheit') { $weg = new weg(); $weg->get_last_eigentuemer($this->kos_id); if (isset($weg->eigentuemer_id)) { $e_id = $weg->eigentuemer_id; $weg->get_eigentuemer_namen($e_id); $miteigentuemer_namen = strip_tags($weg->eigentuemer_name_str); /* ################Betreuer################## */ $anz_p = count($weg->eigentuemer_person_ids); $betreuer_str = ''; $betreuer_arr; for ($be = 0; $be < $anz_p; $be++) { $et_p_id = $weg->eigentuemer_person_ids[$be]; $d_k = new detail(); $dt_arr = $d_k->finde_alle_details_grup('PERSON', $et_p_id, 'INS-Kundenbetreuer'); if (is_array($dt_arr)) { $anz_bet = count($dt_arr); for ($bet = 0; $bet < $anz_bet; $bet++) { $bet_str = $dt_arr[$bet]['DETAIL_INHALT']; $betreuer_str .= "{$bet_str}<br>"; $betreuer_arr[] = $bet_str; } } } if (is_array($betreuer_arr)) { $betreuer_str = ''; $betreuer_arr1 = array_unique($betreuer_arr); for ($bbb = 0; $bbb < count($betreuer_arr1); $bbb++) { $betreuer_str .= $betreuer_arr1[$bbb]; } $pdf->addText(252, 635, 8, "<b>Erledigt</b>:{$erledigt}"); } } else { $miteigentuemer_namen = "UNBEKANNT"; } } else { $pdf->addText(252, 635, 8, "<b>Erledigt</b>: {$erledigt}"); } $pdf->ezText($kontaktdaten_mieter); if ($pdf->y > 645) { $pdf->ezSetY(645); } $pdf->ezSetDy(-5); // abstand $pdf->ezText("<b>Auftragsbeschreibung:</b>", 12); $pdf->ezText($this->text); $pdf->ezSetDy(-10); // abstand if ($this->benutzer_typ == 'Benutzer') { $pdf->ezText("<b>Durchgeführte Arbeiten:</b>"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezSetDy(-15); // abstand $pdf->ezText("<b>Material:</b>"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezText("_________________________________________________________________________"); $pdf->ezSetDy(-10); // abstand $pdf->Rectangle(50, $pdf->y - 20, 10, 10); $pdf->addText(65, $pdf->y - 18, 8, "<b>Arbeit abgeschlossen</b>"); $pdf->ezSetDy(-15); // abstand $pdf->Rectangle(50, $pdf->y - 20, 10, 10); $pdf->addText(65, $pdf->y - 18, 8, "<b>Arbeit nicht abgeschlossen</b>"); $pdf->addText(200, $pdf->y - 18, 8, "<b>Neuer Termin: _______________/____________ Uhr</b>"); $pdf->ezSetDy(-50); // abstand $pdf->Rectangle(50, $pdf->y - 20, 10, 10); $pdf->addText(65, $pdf->y - 18, 8, "<b>Fahrzeit:______________ Std:Min</b>"); $pdf->addText(200, $pdf->y - 18, 8, "<b>Ankunftszeit: _______________ Uhr</b>"); $pdf->addText(375, $pdf->y - 18, 8, "<b>Fertigstellunsgszeit: _______________ Uhr</b>"); $pdf->ezSetDy(-100); // abstand $pdf->addText(50, $pdf->y - 18, 8, "_______________________"); $pdf->addText(200, $pdf->y - 18, 8, "_______________________________"); $pdf->addText(375, $pdf->y - 18, 8, "___________________________________"); $pdf->ezSetDy(-10); // abstand $pdf->addText(90, $pdf->y - 18, 6, "Datum"); $pdf->addText(240, $pdf->y - 18, 6, "Unterschrift Kunde"); $pdf->addText(425, $pdf->y - 18, 6, "Unterschrift Monteur"); } if ($this->benutzer_typ == 'Partner') { $rr = new rechnung(); if ($this->kos_typ == 'Eigentuemer') { $rr->get_empfaenger_infos('Objekt', $weg->objekt_id); } else { $rr->get_empfaenger_infos($this->kos_typ, $this->kos_id); } $dd = new detail(); $rep_eur = $dd->finde_detail_inhalt('PARTNER_LIEFERANT', $rr->rechnungs_empfaenger_id, 'Rep-Freigabe'); $rr->get_empfaenger_info($rr->rechnungs_empfaenger_id); $pdf->ezSetDy(-10); // abstand if (empty($rep_eur)) { $pdf->ezText("<b>Freigabe bis: ______ EUR Netto</b>"); } else { $pdf->ezText("<b>Freigabe bis: {$rep_eur} EUR Netto</b>"); } $dd = new detail(); $b_tel = $dd->finde_detail_inhalt('BENUTZER', $_SESSION['benutzer_id'], 'Telefon'); if (empty($b_tel)) { $b_tel = $dd->finde_detail_inhalt('PARTNER_LIEFERANT', $_SESSION[partner_id], 'Telefon'); } $pdf->ezSetDy(-10); // abstand $pdf->ezText("<b>Bei Kosten über Freigabesumme bitten wir um Rückmeldung unter {$b_tel}.</b>"); $pdf->ezSetDy(-10); // abstand $pdf->ezText("Rechnung bitte unter Angabe der <u><b>Auftragsnummer {$id}</b></u> und <u><b>{$this->kos_typ} {$this->kos_bez}</b></u> an:", 10); $pdf->ezSetDy(-10); // abstand $pdf->ezText("<b>{$rr->rechnungs_empfaenger_name}\n{$rr->rechnungs_empfaenger_strasse} {$rr->rechnungs_empfaenger_hausnr}\n{$rr->rechnungs_empfaenger_plz} {$rr->rechnungs_empfaenger_ort}</b>", 12); $pdf->ezSetDy(-25); // abstand $pdf->ezText("Mit freundlichen Grüßen", 10); $pdf->ezSetDy(-25); // abstand $pdf->ezText("i.A. {$this->verfasst_von}", 10); } ob_clean(); $gk_bez = utf8_encode(date("Y_m_d") . '_' . substr(str_replace('.', '_', str_replace(',', '', str_replace(' ', '_', ltrim(rtrim($this->kos_bez))))), 0, 30) . '_Auftrag-Nr._' . $id . '.pdf'); $pdf_opt['Content-Disposition'] = $gk_bez; $pdf->ezStream($pdf_opt); }
function lagerbestand_anzeigen_bis($datum) { $datum = date_german2mysql($datum); if (!empty($_SESSION[lager_id])) { $lager_id = $_SESSION['lager_id']; mysql_query("SET SQL_BIG_SELECTS=1"); // $result = mysql_query ("SELECT RECHNUNGEN_POSITIONEN.BELEG_NR, POSITION, BEZEICHNUNG, RECHNUNGEN_POSITIONEN.ART_LIEFERANT, RECHNUNGEN_POSITIONEN.ARTIKEL_NR, COUNT( RECHNUNGEN_POSITIONEN.MENGE) AS GEKAUFTE_MENGE, RECHNUNGEN_POSITIONEN.PREIS, RECHNUNGEN_POSITIONEN.MWST_SATZ FROM RECHNUNGEN RIGHT JOIN (RECHNUNGEN_POSITIONEN, POSITIONEN_KATALOG) ON ( RECHNUNGEN.BELEG_NR = RECHNUNGEN_POSITIONEN.BELEG_NR && POSITIONEN_KATALOG.ART_LIEFERANT = RECHNUNGEN_POSITIONEN.ART_LIEFERANT && RECHNUNGEN_POSITIONEN.ARTIKEL_NR = POSITIONEN_KATALOG.ARTIKEL_NR ) WHERE EMPFAENGER_TYP = 'Lager' && EMPFAENGER_ID = '$lager_id' && RECHNUNGEN_POSITIONEN.AKTUELL='1' GROUP BY RECHNUNGEN_POSITIONEN.ARTIKEL_NR ORDER BY BEZEICHNUNG"); $result = mysql_query("SELECT RECHNUNGEN.EINGANGSDATUM, RECHNUNGEN_POSITIONEN.BELEG_NR, POSITION, BEZEICHNUNG, RECHNUNGEN_POSITIONEN.ART_LIEFERANT, RECHNUNGEN_POSITIONEN.ARTIKEL_NR, RECHNUNGEN_POSITIONEN.MENGE AS GEKAUFTE_MENGE, RECHNUNGEN_POSITIONEN.PREIS, RECHNUNGEN_POSITIONEN.MWST_SATZ FROM RECHNUNGEN RIGHT JOIN (RECHNUNGEN_POSITIONEN, POSITIONEN_KATALOG) ON ( RECHNUNGEN.BELEG_NR = RECHNUNGEN_POSITIONEN.BELEG_NR && POSITIONEN_KATALOG.ART_LIEFERANT = RECHNUNGEN_POSITIONEN.ART_LIEFERANT && RECHNUNGEN_POSITIONEN.ARTIKEL_NR = POSITIONEN_KATALOG.ARTIKEL_NR ) WHERE EMPFAENGER_TYP = 'Lager' && EMPFAENGER_ID = '{$lager_id}' && EINGANGSDATUM<='{$datum}' && RECHNUNGEN_POSITIONEN.AKTUELL='1' && RECHNUNGEN.AKTUELL='1' GROUP BY RECHNUNGEN_POSITIONEN.ARTIKEL_NR, BELEG_NR ORDER BY RECHNUNGEN.EINGANGSDATUM ASC"); // echo "SELECT RECHNUNGEN.EINGANGSDATUM, RECHNUNGEN_POSITIONEN.BELEG_NR, POSITION, BEZEICHNUNG, RECHNUNGEN_POSITIONEN.ART_LIEFERANT, RECHNUNGEN_POSITIONEN.ARTIKEL_NR, RECHNUNGEN_POSITIONEN.MENGE AS GEKAUFTE_MENGE, RECHNUNGEN_POSITIONEN.PREIS, RECHNUNGEN_POSITIONEN.MWST_SATZ FROM RECHNUNGEN RIGHT JOIN (RECHNUNGEN_POSITIONEN, POSITIONEN_KATALOG) ON ( RECHNUNGEN.BELEG_NR = RECHNUNGEN_POSITIONEN.BELEG_NR && POSITIONEN_KATALOG.ART_LIEFERANT = RECHNUNGEN_POSITIONEN.ART_LIEFERANT && RECHNUNGEN_POSITIONEN.ARTIKEL_NR = POSITIONEN_KATALOG.ARTIKEL_NR ) WHERE EMPFAENGER_TYP = 'Lager' && EMPFAENGER_ID = '$lager_id' && RECHNUNGEN_POSITIONEN.AKTUELL='1' && RECHNUNGEN.AKTUELL='1' GROUP BY RECHNUNGEN_POSITIONEN.ARTIKEL_NR, BELEG_NR ORDER BY BEZEICHNUNG ASC"; $az = mysql_numrows($result); // az = anzahl zeilen if ($az) { while ($row = mysql_fetch_assoc($result)) { $my_array[] = $row; } echo "<table class=\"sortable\">"; // echo "<tr class=\"feldernamen\" align=\"right\"><td>Ansehen</td><td>Artikelnr.</td><td>Artikelbezeichnung</td><td>MENGE</td><td>RESTMENGE</td><td>PREIS</td><td>MWSt</td><td>RESTWERT</td></tr>"; echo "<tr><th>Datum</th><th>LIEFERANT</th><th>Rechnung</th><th>Artikelnr.</th><th>Bezeichnung</th><th>Menge</th><th>rest</th><th>Preis</th><th>Mwst</th><th>Restwert</th></tr>"; $gesamt_lager_wert = 0; $zaehler = 0; $rechnung_info = new rechnung(); for ($a = 0; $a < count($my_array); $a++) { $datum = date_mysql2german($my_array[$a][EINGANGSDATUM]); $beleg_nr = $my_array[$a][BELEG_NR]; $lieferant_id = $my_array[$a][ART_LIEFERANT]; $pp = new partners(); $pp->get_partner_name($lieferant_id); $position = $my_array[$a][POSITION]; $menge = $my_array[$a][GEKAUFTE_MENGE]; $preis = $my_array[$a][PREIS]; $kontierte_menge = $rechnung_info->position_auf_kontierung_pruefen($beleg_nr, $position); // $rechnung_info->rechnung_grunddaten_holen($beleg_nr); $rest_menge = $menge - $kontierte_menge; // $rest_menge = number_format($rest_menge,'',2,'.'); // echo "$beleg_nr: $position. $menge - $kontierte_menge = $rest_menge<br>"; $artikel_nr = $my_array[$a][ARTIKEL_NR]; $bezeichnung = $my_array[$a][BEZEICHNUNG]; $pos_mwst_satz = $my_array[$a][MWST_SATZ]; $waren_wert = $rest_menge * $preis / 100 * (100 + $pos_mwst_satz); $menge = nummer_punkt2komma($menge); $preis = nummer_punkt2komma($preis); $rest_menge = nummer_punkt2komma($rest_menge); $waren_wert_a = nummer_punkt2komma($waren_wert); $link_artikel_suche = "<a href=\"?daten=lager&option=artikel_suche&artikel_nr={$artikel_nr}\">{$artikel_nr}</a>"; $beleg_link = "<a href=\"?daten=rechnungen&option=rechnung_kontieren&belegnr={$beleg_nr}\">Rechnung</a>"; if ($rest_menge != '0,00') { $zaehler++; $gesamt_lager_wert = $gesamt_lager_wert + $waren_wert; $beleg_link = "<a href=\"?daten=rechnungen&option=rechnung_kontieren&belegnr={$beleg_nr}\">Rechnung</a>"; if ($zaehler == '1') { $beleg_link = "<a href=\"?daten=rechnungen&option=rechnung_kontieren&belegnr={$beleg_nr}\">Rechnung</a>"; echo "<tr class=\"zeile1\" align=\"right\"><td>{$datum}</td><td>{$pp->partner_name}</td><td>{$beleg_link}</td><td>{$link_artikel_suche}</td><td>{$bezeichnung}</td><td>{$menge}</td><td>{$rest_menge}</td><td>{$preis} €</td><td>{$pos_mwst_satz} %</td><td>{$waren_wert_a} €</td></tr>"; } if ($zaehler == '2') { $beleg_link = "<a href=\"?daten=rechnungen&option=rechnung_kontieren&belegnr={$beleg_nr}\">Rechnung</a>"; echo "<tr class=\"zeile2\" align=\"right\"><td>{$datum}</td><td>{$pp->partner_name}</td><td>{$beleg_link}</td><td>{$link_artikel_suche}</td><td>{$bezeichnung}</td><td>{$menge}</td><td>{$rest_menge}</td><td>{$preis} €</td><td>{$pos_mwst_satz} %</td><td>{$waren_wert_a} €</td></tr>"; } } if ($zaehler == 2) { $zaehler = 0; } } // end for $gesamt_lager_wert_a = nummer_punkt2komma($gesamt_lager_wert); echo "<tr align=\"right\"><td colspan=9>Restwarenwert gesamt</td><td>{$gesamt_lager_wert_a} €</td></tr>"; echo "</table>"; } else { return false; } } else { warnung_ausgeben("Bitte Lager wählen"); } }
function autobuchen_zahlung($dtaus_id, $datum, $kto_auszugsnr) { $rechnungen_arr = $this->dtaus_zeilen_arr_holen($dtaus_id); $anzahl = count($rechnungen_arr); if ($anzahl > 0) { for ($a = 0; $a < $anzahl; $a++) { $u_dat = $rechnungen_arr[$a]['U_DAT']; $ueberwiesener_betrag = $rechnungen_arr[$a]['BETRAG']; $a_konto_id = $rechnungen_arr[$a]['A_KONTO_ID']; $buchungstext = $rechnungen_arr[$a]['BUCHUNGSTEXT']; $vorzeichen = '-'; $bezugs_tab = $rechnungen_arr[$a]['BEZUGSTAB']; $belegnr = $rechnungen_arr[$a]['BEZUGS_ID']; if ($bezugs_tab == 'RECHNUNG') { /* Wie kontiert buchen */ $this->ueberwiesene_rechnung_buchen($datum, $kto_auszugsnr, $belegnr, $vorzeichen, $ueberwiesener_betrag, $buchungstext, $a_konto_id); /* In der Tab UEBERWEISUNGEN Kontoauszugsnr und Datum updaten */ $this->update_ueberweisung_dat($u_dat, $datum, $kto_auszugsnr); $r = new rechnung(); $r->rechnung_als_freigegeben($belegnr); $r->rechnung_als_gezahlt($belegnr, $datum); } } // end for } else { die("Kein Ihnalt in der DTAUS-DATEI"); } }
function werkzeugliste_nach_mitarbeiter() { $arr = $this->werkzeugliste_verteilt_arr(); if (is_array($arr)) { $anz = count($arr); // echo "<table class=\"sortable\">"; // echo "<tr><th>LIEFERANT</th><th>WBNR</th><th>BESCHREIBUNG</th><th>KURZINFO</th><th>MENGE</th><th>MITARBITER</th><th>OPTION</th></tr>"; $tmp_b_id = ''; for ($a = 0; $a < $anz; $a++) { $w_id = $arr[$a]['ID']; $beleg_id = $arr[$a]['BELEG_ID']; $art_nr = $arr[$a]['ARTIKEL_NR']; $pos = $arr[$a]['POS']; $menge = $arr[$a]['MENGE']; $kurzinfo = $arr[$a]['KURZINFO']; $r = new rechnung(); $r->rechnung_grunddaten_holen($beleg_id); $katalog_info = $r->artikel_info($r->rechnungs_aussteller_id, $art_nr); $art_info = $katalog_info[0]['BEZEICHNUNG']; $lieferant = $r->rechnungs_aussteller_name; $link_beleg = "<a href=\"?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$beleg_id}\">{$lieferant}</a>"; $wb_nr = 'W-' . $w_id; if ($tmp_b_id != $b_id && $a != 0) { $tmp_b_id = $b_id; echo "<table class=\"sortable\">"; echo "<tr><th>LIEFERANT</th><th>WBNR</th><th>BESCHREIBUNG</th><th>KURZINFO</th><th>MENGE</th><th>MITARBITER</th><th>OPTION</th></tr>"; } echo "<tr><td>{$link_beleg}</td><td>{$wb_nr}</td><td>{$art_info}</td><td>{$kurzinfo}</td><td>{$menge}</td>"; $b_id = $arr[$a]['BENUTZER_ID']; if ($b_id) { $bb = new benutzer(); $bb->get_benutzer_infos($b_id); $link_mitarbeiter_liste = "<a href=\"?daten=benutzer&option=werkzeuge_mitarbeiter&b_id={$b_id}\">{$bb->benutzername}</a>"; echo "<td>{$link_mitarbeiter_liste}</td>"; } else { $link_frei = "<a href=\"?daten=benutzer&option=werkzeug_zuweisen&w_id={$w_id}\">Zuweisen</a>"; echo "<td>FREI {$link_frei}</td>"; } if ($b_id == NULL) { $link_loeschen = "<a href=\"?daten=benutzer&option=werkzeug_raus&w_id={$w_id}\">Aus Liste Löschen</td>"; } else { $link_loeschen = "<a href=\"?daten=benutzer&option=werkzeug_rueckgabe&w_id={$w_id}&b_id={$b_id}\">Einzelrückgabe</td>"; } echo "<td>{$link_loeschen}</td>"; echo "</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 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 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; }
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 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 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 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 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); }
$b_pos = 1; for ($a = 1; $a < $anz; $a++) { $zeile = explode(';', $arr[$a]); $pos_typ = $zeile[2]; // Einheit LV LG if ($pos_typ == 'Position') { $artikel_nr = ltrim(rtrim($zeile[0])) . ltrim(rtrim($zeile[16])); $menge = nummer_komma2punkt($zeile[3]); $vpe = $zeile[4]; $pos_netto = nummer_komma2punkt($zeile[10]); $e_preis = $pos_netto / $menge; $rabatt1 = $zeile[6]; $listenpreis = $pos_netto / (100 - $rabatt1) * 100 / $menge; $bezeichnung = $zeile[1]; $mwst = $zeile[7]; $r1 = new rechnung(); if (!is_array($r1->artikel_info($aussteller_id, $artikel_nr))) { $r1->artikel_leistung_mit_artikelnr_speichern($aussteller_id, $bezeichnung, $listenpreis, $artikel_nr, $rabatt1, $vpe, $mwst, $skonto); } echo "{$a}. {$bezeichnung}<br>"; $r->position_speichern($beleg_nr, $beleg_nr, $aussteller_id, $artikel_nr, $menge, $listenpreis, $mwst, $skonto, $rabatt1, $pos_netto); $b_pos++; } if ($pos_typ == 'LG') { $pool_bez = $zeile[0] . ' ' . $zeile[1]; $rr = new rechnungen(); $rr->insert_pool_bez_in_gruppe($pool_bez, $beleg_nr, $b_pos); } } // end for weiterleiten_in_sec("?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$beleg_nr}", 3);
function ausgaben($kassen_id) { $result = mysql_query("SELECT BEZAHLT_AM, BELEG_NR, AUSSTELLER_TYP, AUSSTELLER_ID, NETTO, BRUTTO, SKONTOBETRAG FROM `RECHNUNGEN` WHERE AKTUELL = '1' && EMPFAENGER_TYP='Kasse' && EMPFAENGER_ID='{$kassen_id}' && STATUS_BEZAHLT='1' ORDER BY BEZAHLT_AM ASC"); $numrows = mysql_numrows($result); if ($numrows) { echo "<table>"; echo "<tr><td colspan=6><b>BISHERIGE AUSGABEN</b></td></tr>"; echo "<tr><td>{$this->kassen_name}</td><td>{$this->kassen_verwalter}</td><td>Stand: {$this->kassen_stand}</td><td>Ausgaben offen: {$this->kassen_ausgaben_offen}</td><td></td><td></td></tr>"; echo "<tr><td>BEZAHLT AM</td><td>BELEG</td><td>VON</td><td>NETTO</td><td>BRUTTO</td><td>SKONTO</td></tr>"; while ($row = mysql_fetch_assoc($result)) { $rechnung = new rechnung(); $rechnung->rechnung_grunddaten_holen($row[BELEG_NR]); $beleg_link = "<a href=\"?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$row['BELEG_NR']}\">Ansehen</a>"; echo "<tr><td>{$row['BEZAHLT_AM']}</td><td>{$beleg_link}</td><td>{$rechnung->rechnungs_aussteller_name}</td><td>{$row['NETTO']}</td><td>{$row['BRUTTO']}</td><td>{$row['SKONTOBETRAG']}</td>"; } echo "</table>"; } else { return FALSE; } }
<?php session_start(); require_once "../../klassen/rechnung.php"; $rech = new rechnung(); $rech->nimmAlleDbDaten("{$_SESSION['benutzer']}", "{$_SESSION['dbname']}", "5432", "localhost", "{$_SESSION['passwort']}"); $rech->nimmRechnungsnr($_GET['rechnungsnr']); ?> <html> <body> <table width="100%" border="0"> <tr> <td>Rechnungnr.</td> <td><?php print $rech->holeRechnungsnr(); ?> </td> </tr> <tr> <td>Firmenname</td> <td><?php print $rech->holeFirmenname(); ?> </td> </tr> <tr> <td>Vorname</td> <td><?php print $rech->holeVorname(); ?> </td>
function get_kontierung($art_nr, $menge, $kos_typ, $kos_id, &$table) { $empty = true; $table_tmp = "<table class=\"sortable\">"; $table_tmp .= "<tr><th>BELEG</th><th>ARTIKEL</th><th>BEZ</th><th>AUSSTELLER</th><th>EMPFÄNGER</th><th>MENGE SOLL</th><th>MENGE IST</th></tr>"; $result = mysql_query("SELECT BELEG_NR, POSITION, MENGE FROM `KONTIERUNG_POSITIONEN` WHERE `KOSTENTRAEGER_TYP` LIKE '{$kos_typ}' AND `KOSTENTRAEGER_ID` ='{$kos_id}' AND `AKTUELL` = '1'"); while ($row = mysql_fetch_assoc($result)) { $beleg_nr = $row['BELEG_NR']; $position = $row['POSITION']; $menge_kont = $row['MENGE']; $r = new rechnung(); $art_nr_kont = $r->art_nr_from_beleg($beleg_nr, $position); if ($art_nr_kont == $art_nr) { $empty = false; $lieferant_id = $r->art_lieferant_from_beleg($beleg_nr, $position); $a_arr = $r->artikel_info($lieferant_id, $art_nr); $bez = $a_arr[0]['BEZEICHNUNG']; $r->rechnung_grunddaten_holen($beleg_nr); $link_beleg = "<a href=\"?daten=rechnungen&option=rechnung_kontieren&belegnr={$beleg_nr}\">{$r->rechnungsnummer}</a>"; $link_katalog = "<a href=\"?daten=katalog&option=artikel_suche&artikel_nr={$art_nr}\">{$art_nr}</a>"; // $link_katalog1 = "<a href=\"?daten=katalog&option=artikel_suche_freitext&artikel_nr=$art_nr\">FREITEXT</a>"; // echo "<tr><td>$link_beleg</td><td>$link_katalog</td><td>$r->rechnungs_aussteller_name</td><td>$r->rechnungs_empfaenger_name</td><td>$menge</td><td>$menge_kont</td><td>$bez</td><td>$r->kurzbeschreibung</td></tr>"; $table_tmp .= "<tr><td>{$link_beleg}</td><td>{$link_katalog}</td><td>{$bez}</td><td>{$r->rechnungs_aussteller_name}</td><td>{$r->rechnungs_empfaenger_name}</td><td>{$menge}</td><td>{$menge_kont}</td></tr>"; } } $table_tmp .= "</table>"; if (!$empty) { $table .= $table_tmp; } return $empty; }
case "pool_auswahl": // print_r($_SESSION); $dat = $_REQUEST['kontierung_dat']; $kos_typ = $_REQUEST['kos_typ']; $kos_id = $_REQUEST['kos_id']; $js_reg_pool = "onclick=\"reg_pool()\", 'nix')\""; dropdown_pools('Zielpool wählen', 'z_pool', 'z_pool', $js_reg_pool, $kos_typ, $kos_id); $js = "onclick=\"setTimeout('reg_pool()', 5);"; $js = $js . "setTimeout('daj3(\\'ajax/ajax_info.php?option=kont_pos_deactivate&kontierung_dat={$dat}\\', \\'Rechnung aus Pool zusammenstellen\\')', 400);"; $js = $js . "setTimeout('location.reload()', 1000);\""; echo "<input type=button name=\"_snd\" value=\"Eintragen\" class=\"submit\" id=\"_snd\" {$js}>"; break; case "kont_pos_deactivate": $dat = $_REQUEST['kontierung_dat']; kontierung_pos_deaktivieren($dat); $r_obj = new rechnung(); $r_obj->get_kontierung_obj($dat); $pool_id = $_REQUEST['pool_id']; insert_in_u_pool($r_obj, $pool_id); break; case "pool_up": $kos_typ = $_REQUEST['kos_typ']; $kos_id = $_REQUEST['kos_id']; $pp_dat = $_REQUEST['pp_dat']; $pos = $_REQUEST['virt_pos']; $pool_id = $_REQUEST['pool_id']; up($pp_dat, $pos, $pool_id); // $rr = new rechnungen(); // $rr->u_pool_edit($kos_typ,$kos_id); break; case "pool_down":
function rechnung_aus_beleg($p_id, $beleg_nr, $empf_p_id) { $r = new rechnung(); $r_org = new rechnung(); $r_org->rechnung_grunddaten_holen($beleg_nr); $letzte_belegnr = $r->letzte_beleg_nr() + 1; $jahr = date("Y"); $datum = date("Y-m-d"); $letzte_aussteller_rnr = $r->letzte_aussteller_ausgangs_nr($p_id, 'Partner', $jahr, 'Rechnung') + 1; $letzte_aussteller_rnr = sprintf('%03d', $letzte_aussteller_rnr); $r->rechnungs_kuerzel = $r->rechnungs_kuerzel_ermitteln('Partner', $p_id, $datum); $rechnungsnummer = $r->rechnungs_kuerzel . ' ' . $letzte_aussteller_rnr . '-' . $jahr; $letzte_empfaenger_rnr = $r->letzte_empfaenger_eingangs_nr($empf_p_id, 'Partner', $jahr, 'Rechnung') + 1; $gk = new geldkonto_info(); $gk->geld_konto_ermitteln('Partner', $p_id); $faellig_am = tage_plus($datum, 10); $db_abfrage = "INSERT INTO RECHNUNGEN VALUES (NULL, '{$letzte_belegnr}', '{$rechnungsnummer}', '{$letzte_aussteller_rnr}', '{$letzte_empfaenger_rnr}', 'Rechnung', '{$datum}','{$datum}', '0','0.00','0.00', 'Partner', '{$p_id}','Partner', '{$empf_p_id}','1', '1', '0', '0', '1', '0', '0', '{$faellig_am}', '0000-00-00', '{$r_org->kurzbeschreibung}', '{$gk->geldkonto_id}')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('RECHNUNGEN', $last_dat, '0'); /* Posititonen */ $arr = $r->rechnungs_positionen_arr($beleg_nr); // echo '<pre>'; // print_r($arr); $anz_p = count($arr); for ($a = 0; $a < $anz_p; $a++) { $pos = $arr[$a]['POSITION']; $art_lieferant = $arr[$a]['ART_LIEFERANT']; $art_nr = $arr[$a]['ARTIKEL_NR']; $menge = $arr[$a]['MENGE']; $preis = $arr[$a]['PREIS']; $mwst = $arr[$a]['MWST_SATZ']; $rab = $arr[$a]['RABATT_SATZ']; $skonto = $arr[$a]['SKONTO']; $preis_g = $arr[$a]['GESAMT_NETTO']; $letzte_rech_pos_id = $r->get_last_rechnung_pos_id() + 1; $db_abfrage = "INSERT INTO RECHNUNGEN_POSITIONEN VALUES (NULL, '{$letzte_rech_pos_id}', '{$pos}', '{$letzte_belegnr}', '{$beleg_nr}','{$p_id}', '{$art_nr}', {$menge},'{$preis}','{$mwst}', '{$rab}','{$skonto}', '{$preis_g}','1')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('RECHNUNGEN_POSITIONEN', $last_dat, '0'); $r2 = new rechnungen(); $kont_arr = $r2->get_kontierung_arr($beleg_nr, $pos); $anz_k = count($kont_arr); if ($anz_k < 1) { fehlermeldung_ausgeben("Position {$pos} ist nicht kontiert"); } else { for ($p = 0; $p < $anz_k; $p++) { $k_menge = $kont_arr[$p]['MENGE']; $k_preis = $kont_arr[$p]['EINZEL_PREIS']; $k_preis_g = $kont_arr[$p]['GESAMT_SUMME']; $k_mwst = $kont_arr[$p]['MWST_SATZ']; $k_skonto = $kont_arr[$p]['SKONTO']; $k_rabatt = $kont_arr[$p]['RABATT_SATZ']; $k_konto = $kont_arr[$p]['KONTENRAHMEN_KONTO']; $k_kos_typ = $kont_arr[$p]['KOSTENTRAEGER_TYP']; $k_kos_id = $kont_arr[$p]['KOSTENTRAEGER_ID']; /* Kontieren */ $kontierung_id = $r->get_last_kontierung_id() + 1; $db_abfrage = "INSERT INTO KONTIERUNG_POSITIONEN VALUES (NULL, '{$kontierung_id}','{$letzte_belegnr}', '{$pos}','{$k_menge}', '{$k_preis}', '{$k_preis_g}', '{$k_mwst}', '{$k_skonto}', '{$k_rabatt}', '{$k_konto}', '{$k_kos_typ}', '{$k_kos_id}', '{$datum}', '{$jahr}', '0', '1')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('KONTIERUNG_POSITIONEN', $last_dat, '0'); } // end for2 } // end if } // end for weiterleiten("?daten=rechnungen&option=erfasste_rechnungen"); }
$r->rechnungsausgangsbuch('Lager', $lager_id, $monat, $jahr, 'Rechnung'); } break; case "re": $link = '?daten=lager&option=re'; $lager_info->lager_auswahl_liste($link); if (!empty($_SESSION['lager_id'])) { $monat = $_REQUEST['monat']; $jahr = $_REQUEST['jahr']; if (empty($monat)) { $monat = date("m"); } if (empty($jahr)) { $jahr = date("Y"); } $r = new rechnung(); $lager_id = $_SESSION['lager_id']; $r->rechnungseingangsbuch('Lager', $lager_id, $monat, $jahr, 'Rechnung'); } break; case "artikelsuche": $l = new lager(); $l->artikel_suche_einkauf_form(); break; case "artikel_suche": if (!empty($_REQUEST['artikel_nr'])) { $artikel_nr = $_REQUEST['artikel_nr']; $l = new lager(); $l->artikel_suche_einkauf($artikel_nr, 'Lager', $_SESSION['lager_id']); } break;
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 artikel_suche_freitext($artikel_nr) { $result = mysql_query("SELECT * FROM POSITIONEN_KATALOG WHERE AKTUELL='1' && ARTIKEL_NR LIKE '%{$artikel_nr}%' OR BEZEICHNUNG LIKE '%{$artikel_nr}%' GROUP BY ARTIKEL_NR, ART_LIEFERANT ORDER BY ART_LIEFERANT DESC, BEZEICHNUNG ASC"); $numrows = mysql_numrows($result); if ($numrows) { echo "<h3>Suchergebnis in allen Katalogen zu: {$artikel_nr}</h3>"; echo "<table class=\"sortable\">"; echo "<tr><th>LIEFERANT</th><th>ARTIKELNR</th><th>BEZEICHNUNG</th></tr>"; while ($row = mysql_fetch_assoc($result)) { $p = new partners(); $art_lieferant = $row['ART_LIEFERANT']; $p->get_partner_name($art_lieferant); $art_nr = $row['ARTIKEL_NR']; $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']; $link_preis_info = "<a href=\"?daten=katalog&option=preisentwicklung&artikel_nr={$art_nr}&lieferant={$art_lieferant}\">{$art_nr}</a>"; $link_preis_info1 = "<a href=\"?daten=katalog&option=artikel_suche&artikel_nr={$art_nr}&lieferant={$art_lieferant}\">{$art_nr}</a>"; echo "<tr><td>{$p->partner_name}</td><td>{$link_preis_info1}</td><td>{$artikel_bez}</td></tr>"; } echo "</table>"; } else { echo "KEINE ARTIKEL GEFUNDEN {$artikel_nr}"; } }
// Fill in the data for the new ticket, this will likely come from $_POST. $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(); /*