示例#1
0
 function lagerbestand_anzeigen_bis_pdf($datum_bis)
 {
     $datum_bis = date_german2mysql($datum_bis);
     if (!empty($_SESSION[lager_id])) {
         $lager_id = $_SESSION['lager_id'];
         $ll = new lager();
         $ll->lager_name_partner($lager_id);
         /* $ll->lager_partner_id */
         mysql_query("SET SQL_BIG_SELECTS=1");
         $result = mysql_query("SELECT RECHNUNGSNUMMER, 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_bis}' && RECHNUNGEN_POSITIONEN.AKTUELL='1' && RECHNUNGEN.AKTUELL='1'  GROUP BY RECHNUNGEN_POSITIONEN.ARTIKEL_NR, BELEG_NR ORDER BY RECHNUNGEN.EINGANGSDATUM 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];
                 $rechnungsnummer = $my_array[$a][RECHNUNGSNUMMER];
                 $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);
                 $kontierte_menge = $this->position_auf_kontierung_pruefen($beleg_nr, $position, $datum_bis);
                 $rest_menge = $menge - $kontierte_menge;
                 $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);
                 if ($rest_menge != '0,00') {
                     $gesamt_lager_wert = $gesamt_lager_wert + $waren_wert;
                     // 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>";
                     $tab_arr[$zaehler]['DATUM'] = $datum;
                     $tab_arr[$zaehler]['LIEFERANT'] = $pp->partner_name;
                     $tab_arr[$zaehler]['RNR'] = $rechnungsnummer;
                     $tab_arr[$zaehler]['ART_NR'] = $artikel_nr;
                     $tab_arr[$zaehler]['BEZ'] = $bezeichnung;
                     $tab_arr[$zaehler]['MENGE'] = $menge;
                     $tab_arr[$zaehler]['RMENGE'] = $rest_menge;
                     $tab_arr[$zaehler]['PREIS'] = $preis;
                     $tab_arr[$zaehler]['MWST'] = $pos_mwst_satz;
                     $tab_arr[$zaehler]['W_WERT'] = $waren_wert_a;
                     $zaehler++;
                 }
             }
             // 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>";
             $tab_arr[$zaehler]['PREIS'] = "<b>SUMME</b>";
             $tab_arr[$zaehler]['MWST'] = '<b>' . date_mysql2german($datum_bis) . '</b>';
             $tab_arr[$zaehler]['W_WERT'] = "<b>{$gesamt_lager_wert_a}</b>";
             //include_once ('pdfclass/class.ezpdf.php');
             include_once 'classes/class_bpdf.php';
             $pdf = new Cezpdf('a4', 'landscape');
             $bpdf = new b_pdf();
             $_SESSION['partner_id'] = $ll->lager_partner_id;
             $bpdf->b_header($pdf, 'Partner', $_SESSION['partner_id'], 'landscape', 'Helvetica.afm', 6);
             $p = new partners();
             $p->get_partner_info($_SESSION[partner_id]);
             $datum = date("d.m.Y");
             $cols = array('DATUM' => "Datum", 'LIEFERANT' => "Lieferant", 'RNR' => "RNr.", 'ART_NR' => "Artnr", 'BEZ' => "Bezeichnung", 'MENGE' => "Menge", 'RMENGE' => "Restmenge", 'PREIS' => "Preis", 'MWST' => "MwSt Satz", 'W_WERT' => "Wert");
             $pdf->ezSetDy(-6);
             $lager_bez = $ll->lager_bezeichnung($_SESSION[lager_id]);
             $dbis = date_mysql2german($datum_bis);
             $pdf->ezText("<b>Stand am: {$dbis} | Lager: {$lager_bez} | Warenwert: {$gesamt_lager_wert_a} €</b>");
             $pdf->ezSetDy(-6);
             $pdf->ezTable($tab_arr, $cols, "", array('showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 8, 'fontSize' => 8, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 750, 'cols' => array('MENGE' => array('justification' => 'right', 'width' => 50), 'RMENGE' => array('justification' => 'right', 'width' => 60), 'PREIS' => array('justification' => 'right', 'width' => 50), 'MWST' => array('justification' => 'right', 'width' => 65), 'W_WERT' => array('justification' => 'right', 'width' => 50))));
             ob_clean();
             // ausgabepuffer leeren
             $pdf->ezStream();
         } else {
             return false;
         }
     } else {
         warnung_ausgeben("Bitte Lager wählen");
     }
 }
 function rechnungs_partner_ermitteln()
 {
     if ($this->rechnungs_aussteller_typ == 'Partner') {
         /* Partnernamen holen */
         $this->rechnungs_aussteller_name = $this->get_partner_name($this->rechnungs_aussteller_id);
         /* Anschriften holen */
         $this->get_aussteller_info($this->rechnungs_aussteller_id);
         $this->rechnung_aussteller_partner_id = $this->rechnungs_aussteller_id;
     }
     if ($this->rechnungs_empfaenger_typ == 'Partner') {
         $this->rechnungs_empfaenger_name = $this->get_partner_name($this->rechnungs_empfaenger_id);
         /* Anschriften holen */
         $this->get_empfaenger_info($this->rechnungs_empfaenger_id);
         /* Ende Partnernamen holen */
         $this->rechnung_empfaenger_partner_id = $this->rechnungs_empfaenger_id;
     }
     if ($this->rechnungs_empfaenger_typ == 'Eigentuemer') {
         $weg = new weg();
         $weg->get_eigentumer_id_infos3($this->rechnungs_empfaenger_id);
         $this->rechnungs_empfaenger_name = $weg->post_anschrift;
         /* Anschriften holen */
         // $this->get_empfaenger_info($this->rechnungs_empfaenger_id);
         /* Ende Partnernamen holen */
         // $this->rechnung_empfaenger_partner_id = $this->rechnungs_empfaenger_id;
     }
     if ($this->rechnungs_aussteller_typ == 'Kasse') {
         /* Kassennamen holen */
         $kassen_info = new kasse();
         $kassen_info->get_kassen_info($this->rechnungs_aussteller_id);
         $this->rechnungs_aussteller_name = "" . $kassen_info->kassen_name . "<br><br>" . $kassen_info->kassen_verwalter . "";
         /* Kassen Partner finden */
         $this->rechnung_aussteller_partner_id = $kassen_info->kassen_partner_id;
     }
     if ($this->rechnungs_empfaenger_typ == 'Kasse') {
         /* Kassennamen holen */
         $kassen_info = new kasse();
         $kassen_info->get_kassen_info($this->rechnungs_empfaenger_id);
         $this->rechnungs_empfaenger_name = "" . $kassen_info->kassen_name . "<br><br>" . $kassen_info->kassen_verwalter . "";
         /* Kassen Partner finden */
         $this->rechnung_empfaenger_partner_id = $kassen_info->kassen_partner_id;
     }
     if ($this->rechnungs_aussteller_typ == 'Lager') {
         $lager_info = new lager();
         // $this->rechnungs_aussteller_name = $lager_info->lager_bezeichnung($this->rechnungs_aussteller_id);
         /*
          * Liefert Lagernamen und Partner id
          * $lager_info->lager_name
          * $lager_info->lager_partner_id
          */
         $lager_info->lager_name_partner($this->rechnungs_aussteller_id);
         /* Partnernamen holen */
         $this->rechnungs_aussteller_name = 'Lager ' . $this->get_partner_name($lager_info->lager_partner_id);
         /* Anschriften holen */
         $this->get_aussteller_info($lager_info->lager_partner_id);
         $this->rechnung_aussteller_partner_id = $lager_info->lager_partner_id;
     }
     if ($this->rechnungs_empfaenger_typ == 'Lager') {
         $lager_info1 = new lager();
         // $this->rechnungs_empfaenger_name = $lager_info->lager_bezeichnung($this->rechnungs_empfaenger_id); //alt
         /*
          * Liefert Lagernamen und Partner id
          * $lager_info->lager_name
          * $lager_info->lager_partner_id
          */
         $lager_info1->lager_name_partner($this->rechnungs_empfaenger_id);
         /* Partnernamen finden */
         $this->rechnungs_empfaenger_name = 'Lager ' . $this->get_partner_name($lager_info1->lager_partner_id);
         /* Anschriften holen */
         $this->get_empfaenger_info($lager_info1->lager_partner_id);
         $this->rechnung_empfaenger_partner_id = $lager_info1->lager_partner_id;
     }
     if (isset($this->rechnung_empfaenger_partner_id) && $this->rechnung_empfaenger_partner_id === $this->rechnung_aussteller_partner_id) {
         $this->rechnungs_typ_druck = 'BUCHUNGSBELEG';
     } else {
         // $this->rechnungs_typ_druck = 'RECHNUNG';
         $this->rechnungs_typ_druck = $this->rechnungstyp;
     }
 }