예제 #1
0
 function rechnungsausgangsbuch_pdf($von_typ, $von_id, $monat, $jahr, $rechnungstyp, $sort = 'ASC')
 {
     // die('ova');
     /* Ausgangsbuch */
     $rechnungen_arr = $this->ausgangsrechnungen_arr_sort($von_typ, $von_id, $monat, $jahr, $rechnungstyp, $sort);
     if (!is_array($rechnungen_arr)) {
         die("Keine {$rechnungstyp} vorhanden");
     } else {
         $gesamt_brutto = 0;
         $gesamt_gut_retour = 0;
         $gesamt_skonti = 0;
         $anz_zz = sizeof($rechnungen_arr);
         for ($a = 0; $a < $anz_zz; $a++) {
             $belegnr = $rechnungen_arr[$a]['BELEG_NR'];
             $this->rechnung_grunddaten_holen($belegnr);
             $tab_arr[$a]['BELEG_NR'] = $belegnr;
             $tab_arr[$a]['LFDNR'] = $this->aussteller_ausgangs_rnr;
             $tab_arr[$a]['EMPFAENGER'] = substr($this->rechnungs_empfaenger_name, 0, 48);
             // $r->rechnungs_empfaenger_name = substr($r->rechnungs_empfaenger_name,0,48);
             $kurzbeschreibung = str_replace(",", ", ", $this->kurzbeschreibung);
             $kurzbeschreibung = str_replace("<br>", " ", $kurzbeschreibung);
             $kurzbeschreibung = str_replace("\n", " ", $kurzbeschreibung);
             $tab_arr[$a]['KURZTEXT'] = $kurzbeschreibung;
             if ($this->rechnungstyp == 'Rechnung') {
                 $tab_arr[$a]['BRUTTO'] = nummer_punkt2komma($this->rechnungs_brutto) . '€ ';
                 $gesamt_brutto += $this->rechnungs_brutto;
             }
             if ($this->rechnungstyp == 'Teilrechnung') {
                 $tab_arr[$a]['BRUTTO'] = nummer_punkt2komma_t($this->rechnungs_brutto) . '€ ';
                 $gesamt_brutto += $this->rechnungs_brutto;
             }
             if ($this->rechnungstyp == 'Schlussrechnung') {
                 $rrr = new rechnungen();
                 $rrr->get_summen_schlussrechnung($belegnr);
                 $rrr->get_sicherheitseinbehalt($belegnr);
                 if ($rrr->rg_betrag > '0.00') {
                     $rrr->rechnungs_brutto_schluss = $rrr->rechnungs_brutto_schluss - $rrr->rg_betrag;
                     // $rrr->rechnungs_brutto_schluss_a = nummer_punkt2komma_t($rrr->rechnungs_brutto_schluss);
                 }
                 $tab_arr[$a]['BRUTTO'] = nummer_punkt2komma_t($rrr->rechnungs_brutto_schluss) . '€ ';
                 $gesamt_brutto += $rrr->rechnungs_brutto_schluss;
             }
             if ($this->rechnungstyp == 'Gutschrift' or $this->rechnungstyp == 'Stornorechnung') {
                 $tab_arr[$a]['GUT_RET'] = nummer_punkt2komma($this->rechnungs_brutto) . '€ ';
                 $gesamt_gut_retour += $this->rechnungs_brutto;
             }
             $tab_arr[$a]['RNR'] = $this->rechnungsnummer;
             $tab_arr[$a]['DATUM'] = $this->rechnungsdatum;
             $tab_arr[$a]['SKONTO'] = nummer_punkt2komma($this->rechnungs_skontoabzug) . '€ ';
             $gesamt_skonti += $this->rechnungs_skontoabzug;
             if ($a == sizeof($rechnungen_arr) - 1) {
                 $tab_arr[$a + 1]['BRUTTO'] = '<b>=======</b>';
                 $tab_arr[$a + 1]['GUT_RET'] = '<b>=======</b>';
                 $tab_arr[$a + 1]['SKONTO'] = '<b>=======</b>';
                 $tab_arr[$a + 2]['KURZTEXT'] = '<b>SUMMEN:</b>';
                 $tab_arr[$a + 2]['BRUTTO'] = '<b>' . nummer_punkt2komma($gesamt_brutto) . '€ </b>';
                 $tab_arr[$a + 2]['GUT_RET'] = '<b>' . nummer_punkt2komma($gesamt_gut_retour) . '€ </b>';
                 $tab_arr[$a + 2]['SKONTO'] = '<b>' . nummer_punkt2komma($gesamt_skonti) . '€ </b>';
             }
         }
     }
     // echo '<pre>';
     // print_r($tab_arr);
     /* Spaltendefinition */
     $cols = array('LFDNR' => "<b>LFDNR.</b>", 'EMPFAENGER' => "<b>RECHNUNGSEMPFÄNGER</b>", 'KURZTEXT' => "<b>LEISTUNG/WARE</b>", 'BRUTTO' => "<b>BRUTTO</b>", 'GUT_RET' => "<b>GUTSCHRIFTEN\n RETOUREN</b>", 'RNR' => "<b>R-NR</b>", 'DATUM' => "<b>DATUM</b>", 'SKONTO' => "<b>SKONTO</b>");
     /* Tabellenparameter */
     $tableoptions = array('width' => 730, 'xPos' => 410, 'shaded' => 0, 'showHeadings' => 1, 'showLines' => 0, 'lineCol' => array(0.0, 0.0, 0.0), 'fontSize' => 8, 'titleFontSize' => 8, 'splitRows' => 0, 'protectRows' => 0, 'innerLineThickness' => 0.5, 'outerLineThickness' => 0.5, 'rowGap' => 1, 'colGap' => 1, 'cols' => array('LFDNR' => array('justification' => 'left'), 'EMPFAENGER' => array('justification' => 'left'), 'KURZTEXT' => array('justification' => 'left'), 'BRUTTO' => array('justification' => 'right'), 'GUT_RET' => array('justification' => 'right'), 'DATUM' => array('justification' => 'left'), 'SKONTO' => array('justification' => 'right')));
     /* ezPDF-Klasse laden */
     //include_once ('pdfclass/class.ezpdf.php');
     /* Eigene PDF-Klasse laden */
     include_once 'classes/class_bpdf.php';
     /* Neues PDF-Objekt erstellen */
     $pdf = new Cezpdf('a4', 'landscape');
     /* Neue Instanz von b_pdf */
     $bpdf = new b_pdf();
     /* Header und Footer des Rechnungsaustellers in alle PDF-Seiten laden */
     $bpdf->b_header($pdf, $von_typ, $von_id, 'landscape', 'Helvetica.afm', 6);
     $all = $pdf->openObject();
     $pdf->saveState();
     $d = new detail();
     if ($von_typ == 'Partner') {
         $mandanten_nr = $d->finde_mandanten_nr($von_id);
         $pdf->addText(43, 480, 8, "<b>Mandant: {$mandanten_nr}</b> Blatt: {$monat} ");
     }
     $pdf->addText(335, 480, 12, "<b>RECHNUNGSAUSGANGSBUCH</b>");
     $pdf->restoreState();
     $pdf->closeObject();
     $pdf->addObject($all, 'all');
     /* Tabelle ausgeben */
     $pdf->ezTable($tab_arr, $cols, "", $tableoptions);
     /* Ausgabepuffer leeren */
     ob_clean();
     /* PDF-Ausgabe */
     $pdf->ezStream();
 }
예제 #2
0
 function rechnungsbuch_anzeigen_aus($arr)
 {
     if (isset($_REQUEST['xls'])) {
         ob_clean();
         // ausgabepuffer leeren
         $fileName = 'rechnungsausgangsbuch' . date("d-m-Y") . '.xls';
         header("Content-type: application/vnd.ms-excel");
         // header("Content-Disposition: attachment; filename=$fileName");
         header("Content-Disposition: inline; filename={$fileName}");
         $beleg_link = '';
     }
     echo "<table class=\"sortable\" id=\"positionen_tab\">\n";
     echo "<thead>";
     echo "<tr >";
     echo "<th scopr=\"col\" id=\"tr_ansehen\">Ansehen</th>";
     echo "<th >LFDNR</th>";
     echo "<th scopr=\"col\">Rechnungsempfänger</th>";
     echo "<th scopr=\"col\">Leistung/Ware</th>";
     echo "<th scopr=\"col\">Brutto</th>";
     // echo "<th scopr=\"col\">Skontobetrag</th>";
     echo "<th scopr=\"col\">Gutschriften und Returen</th>";
     echo "<th scopr=\"col\">R-Nr</th>";
     echo "<th scopr=\"col\">R-Datum</th>";
     echo "<th scopr=\"col\">Skonto</th>";
     echo "</tr>";
     echo "</thead>";
     $r = new rechnung();
     $anzahl = count($arr);
     if ($anzahl) {
         $g_skonto = 0;
         for ($a = 0; $a < $anzahl; $a++) {
             $belegnr = $arr[$a]['BELEG_NR'];
             if (!isset($fileName)) {
                 $beleg_link = "<a href=\"?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$belegnr}\">Ansehen</a>";
                 $pdf_link = "<a href=\"?daten=rechnungen&option=anzeigen_pdf&belegnr={$belegnr}\"><img src=\"css/pdf.png\"></a>";
                 $pdf_link1 = "<a href=\"?daten=rechnungen&option=anzeigen_pdf&belegnr={$belegnr}&no_logo\"><img src=\"css/pdf2.png\"></a>";
             }
             $r->rechnung_grunddaten_holen($belegnr);
             $r->rechnungs_empfaenger_name = bereinige_string($r->rechnungs_empfaenger_name);
             $r->rechnungs_empfaenger_name = substr($r->rechnungs_empfaenger_name, 0, 48);
             echo "<tr><td id=\"td_ansehen\">{$beleg_link} {$pdf_link} {$pdf_link1}</td><td valign=\"top\">{$r->aussteller_ausgangs_rnr}</td><td valign=\"top\">{$r->rechnungs_empfaenger_name}</td>";
             // $r->kurzbeschreibung =bereinige_string($r->kurzbeschreibung);
             echo "<td valign=\"top\">{$r->kurzbeschreibung}</td>";
             $r->rechnungs_brutto_ausgabe = nummer_punkt2komma($r->rechnungs_brutto);
             $r->rechnungs_skonto_ausgabe = nummer_punkt2komma($r->rechnungs_skontobetrag);
             if ($r->rechnungstyp == 'Rechnung' or $r->rechnungstyp == 'Teilrechnung') {
                 // echo "<td align=\"right\">$r->rechnungs_brutto_ausgabe</td><td align=\"right\">$r->rechnungs_skonto_ausgabe</td><td></td>";
                 echo "<td align=\"right\" valign=\"top\">{$r->rechnungs_brutto_ausgabe}</td><td></td>";
                 $g_brutto_r = 0;
                 $g_brutto_r = $g_brutto_r + $r->rechnungs_brutto;
                 $g_brutto_r = sprintf("%01.2f", $g_brutto_r);
                 $g_skonto_rg = 0;
                 $g_skonto_rg = $g_skonto_rg + $r->rechnungs_skontobetrag;
                 $g_skonto_rg = sprintf("%01.2f", $g_skonto_rg);
                 $g_skonto = $g_skonto + $r->rechnungs_skontoabzug;
                 $g_skonto = sprintf("%01.2f", $g_skonto);
                 $g_netto = 0;
                 $g_netto = $g_netto + $r->rechnungs_netto;
                 $g_netto = sprintf("%01.2f", $g_netto);
                 $g_mwst = 0;
                 $g_mwst = $g_mwst + $r->rechnungs_mwst;
                 $g_mwst = sprintf("%01.2f", $g_mwst);
                 $g_brutto_g = 0;
                 $g_brutto = $g_brutto_g + $r->rechnungs_brutto;
                 $g_brutto = sprintf("%01.2f", $g_brutto);
             }
             if ($r->rechnungstyp == 'Schlussrechnung') {
                 $rrr = new rechnungen();
                 $rrr->get_summen_schlussrechnung($belegnr);
                 /* Sicherheitseinbehalt */
                 $rrr->get_sicherheitseinbehalt($belegnr);
                 if ($rrr->rg_betrag > '0.00') {
                     // $this->rechnungs_brutto = ($row['BRUTTO'] - $rs->rg_betrag);
                     // echo $this->rechnungs_brutto;
                     $rrr->rechnungs_brutto_schluss = $rrr->rechnungs_brutto_schluss - $rrr->rg_betrag;
                     $rrr->rechnungs_brutto_schluss_a = nummer_punkt2komma_t($rrr->rechnungs_brutto_schluss);
                 }
                 echo "<td align=\"right\" valign=\"top\">{$rrr->rechnungs_brutto_schluss_a}</td><td></td>";
                 $g_brutto_r = $g_brutto_r + $rrr->rechnungs_brutto_schluss;
                 $g_brutto_r = sprintf("%01.2f", $g_brutto_r);
                 $g_skonto_rg = $g_skonto_rg + $r->rechnungs_skontobetrag;
                 $g_skonto_rg = sprintf("%01.2f", $g_skonto_rg);
                 $g_skonto = $g_skonto + $rrr->rechnungs_skontoabzug_schluss;
                 $g_skonto = sprintf("%01.2f", $g_skonto);
                 $g_netto = $g_netto + $rrr->rechnungs_netto_schluss;
                 $g_netto = sprintf("%01.2f", $g_netto);
                 $g_mwst = 0;
                 $g_mwst = $g_mwst + $rrr->rechnungs_mwst_schluss;
                 $g_mwst = sprintf("%01.2f", $g_mwst);
                 $g_brutto_g = 0;
                 $g_brutto = $g_brutto_g + $rrr->rechnungs_brutto_schluss;
                 $g_brutto = sprintf("%01.2f", $g_brutto);
             }
             if ($r->rechnungstyp == 'Gutschrift' or $r->rechnungstyp == 'Stornorechnung') {
                 // echo "<td></td><td></td><td align=\"right\">$r->rechnungs_skonto_ausgabe</td>";
                 echo "<td></td><td align=\"right\" valign=\"top\">{$r->rechnungs_brutto_ausgabe}</td>";
                 $g_brutto_g = 0;
                 $g_brutto_g = $g_brutto_g + $r->rechnungs_brutto;
                 $g_brutto_g = sprintf("%01.2f", $g_brutto_g);
             }
             $r->rechnungs_skontoabzug_a = nummer_punkt2komma($r->rechnungs_skontoabzug);
             echo "<td valign=\"top\"><b>{$r->rechnungsnummer}</b></td><td valign=\"top\">{$r->rechnungsdatum}</td><td align=\"right\" valign=\"top\">{$r->rechnungs_skontoabzug_a}</td></tr>";
         }
         // end for
         $g_brutto = nummer_punkt2komma($g_brutto);
         $g_brutto_g = nummer_punkt2komma($g_brutto_g);
         $g_skonto_rg = nummer_punkt2komma($g_skonto_rg);
         $g_skonto = nummer_punkt2komma($g_skonto);
         echo "<tfoot><tr><td colspan=\"9\"><hr></td></tr>";
         // echo "<tr><td></td><td></td><td></td><td></td><td align=\"right\"><b>$g_brutto_r</b></td><td align=\"right\"><b>$g_skonto_rg</b></td><td align=\"right\">$g_brutto_g</td><td></td><td></td></tr>";
         echo "<tr><td id=\"td_ansehen\"></td><td></td><td></td><td></td><td align=\"right\"><b>{$g_brutto}</b></td><td align=\"right\"><b>{$g_brutto_g}</b></td><td></td><td></td><td align=\"right\"><b>{$g_skonto}</b></td></tr></tfoot>";
     } else {
         echo "<tr><td colspan=10>Keine Rechnungen in diesem Monat</td></tr>";
     }
     echo "</table>";
 }