コード例 #1
0
 function beleg_kontierungs_arr($datum, $kto_auszugsnr, $belegnr, $vorzeichen, $buchungsbetrag, $vzweck, $geldkonto_id)
 {
     $this->rechnung_grunddaten_holen($belegnr);
     $r = new rechnung();
     // aus berlussimo_class
     $b = new buchen();
     // benötigt zum verbuchen einzelner positionen nach kontierung
     $kontierungs_status = $r->rechnung_auf_kontierung_pruefen($belegnr);
     if ($kontierungs_status == 'vollstaendig') {
         /*
          * ALT OK Ohne MWST
          *
          * $result = mysql_query ("SELECT sum( GESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) AS NETTO, sum( (
          * (
          * GESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100
          * ) * ( 100 + MWST_SATZ )
          * ) AS BRUTTO, sum( (
          * (
          * (
          * GESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100
          * ) * ( 100 + MWST_SATZ ) /100
          * ) * ( 100 - SKONTO )
          * ) AS SKONTO_BETRAG,
          *
          * KONTENRAHMEN_KONTO, KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID
          * FROM `KONTIERUNG_POSITIONEN`
          * WHERE BELEG_NR = '$belegnr' && AKTUELL = '1'
          * GROUP BY KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, KONTENRAHMEN_KONTO") or die(mysql_error());
          */
         $result = mysql_query("SELECT *, BRUTTO-NETTO AS MWST_BRUTTO,  (BRUTTO-NETTO)/100*(100-SKONTO) AS  MWST_SKONTIERT FROM ( \nSELECT sum( GESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) AS NETTO, sum( (\n(\nGESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100\n) * ( 100 + MWST_SATZ )\n) AS BRUTTO, sum( (\n(\n(\nGESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100\n) * ( 100 + MWST_SATZ ) /100\n) * ( 100 - SKONTO )\n) AS SKONTO_BETRAG,\n\n\n KONTENRAHMEN_KONTO, KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID,SKONTO\nFROM `KONTIERUNG_POSITIONEN`\nWHERE BELEG_NR = '{$belegnr}' && AKTUELL = '1'\nGROUP BY KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, KONTENRAHMEN_KONTO) as t1") or die(mysql_error());
         $numrows = mysql_numrows($result);
         if ($numrows > 0) {
             while ($row = mysql_fetch_assoc($result)) {
                 $my_array[] = $row;
                 // $art_bez = $r->kontierungsartikel_holen($belegnr, $pos);
                 // $vzweck_neu = "ERFNR:$belegnr, Position $pos,"." $menge x $art_bez";
                 $kostentraeger_typ = $row['KOSTENTRAEGER_TYP'];
                 $kostentraeger_id = $row['KOSTENTRAEGER_ID'];
                 $kostenkonto = $row['KONTENRAHMEN_KONTO'];
                 $netto = sprintf("%01.2f", $row['NETTO']);
                 // $netto_mwst = sprintf("%01.2f", $row['MWST_NETTO']);
                 $brutto = sprintf("%01.2f", $row['BRUTTO']);
                 $brutto_mwst = sprintf("%01.2f", $row['MWST_BRUTTO']);
                 $skonto = sprintf("%01.2f", $row['SKONTO_BETRAG']);
                 $skonto_mwst = sprintf("%01.2f", $row['MWST_SKONTIERT']);
                 if ($buchungsbetrag == 'Nettobetrag') {
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $netto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto);
                 }
                 if ($buchungsbetrag == 'Bruttobetrag') {
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $brutto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto, $vorzeichen . $brutto_mwst);
                 }
                 if ($buchungsbetrag == 'Skontobetrag') {
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $skonto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto, $vorzeichen . $skonto_mwst);
                 }
             }
             // end while
         }
         // end if $numrows
         weiterleiten_in_sec('?daten=buchen&option=buchungs_journal', 2);
     } else {
         echo "FEHLER: Kontierung {$kontierungs_status}";
         weiterleiten_in_sec("?daten=rechnungen&option=rechnung_kontieren&belegnr={$belegnr}", 3);
     }
 }
コード例 #2
0
 function ueberwiesene_rechnung_buchen($datum, $kto_auszugsnr, $belegnr, $vorzeichen, $rechnungs_betrag, $vzweck, $geldkonto_id)
 {
     $r = new rechnung();
     // aus berlussimo_class
     $b = new buchen();
     // benötigt zum verbuchen einzelner positionen nach kontierung
     $r->rechnung_grunddaten_holen($belegnr);
     $kontierungs_status = $r->rechnung_auf_kontierung_pruefen($belegnr);
     if ($kontierungs_status == 'vollstaendig') {
         $result = mysql_query("SELECT sum( GESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) AS NETTO, sum( (\n(\nGESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100\n) * ( 100 + MWST_SATZ )\n) AS BRUTTO, sum( (\n(\n(\nGESAMT_SUMME - ( GESAMT_SUMME /100 * RABATT_SATZ ) ) /100\n) * ( 100 + MWST_SATZ ) /100\n) * ( 100 - SKONTO )\n) AS SKONTO_BETRAG, KONTENRAHMEN_KONTO, KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, MWST_SATZ\nFROM `KONTIERUNG_POSITIONEN`\nWHERE BELEG_NR = '{$belegnr}' && AKTUELL = '1'\nGROUP BY KOSTENTRAEGER_TYP, KOSTENTRAEGER_ID, KONTENRAHMEN_KONTO") or die(mysql_error());
         $numrows = mysql_numrows($result);
         if ($numrows > 0) {
             while ($row = mysql_fetch_assoc($result)) {
                 // $my_array[] = $row;
                 // $art_bez = $r->kontierungsartikel_holen($belegnr, $pos);
                 // $vzweck_neu = "ERFNR:$belegnr, Position $pos,"." $menge x $art_bez";
                 $kostentraeger_typ = $row['KOSTENTRAEGER_TYP'];
                 $kostentraeger_id = $row['KOSTENTRAEGER_ID'];
                 $kostenkonto = $row['KONTENRAHMEN_KONTO'];
                 $netto = sprintf("%01.2f", $row['NETTO']);
                 $brutto = sprintf("%01.2f", $row['BRUTTO']);
                 $skonto = sprintf("%01.2f", $row['SKONTO_BETRAG']);
                 $mwst_satz = $row['MWST_SATZ'];
                 /* Netto ohne MWST buchen */
                 if ($rechnungs_betrag == $r->rechnungs_netto) {
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $netto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto);
                 }
                 /* Brutto oder Skontiert = brutto, also OHNE SKONTO */
                 if ($rechnungs_betrag == $r->rechnungs_brutto) {
                     $mwst = $brutto / (100 + $mwst_satz) * $mwst_satz;
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $brutto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto, $vorzeichen . $mwst);
                 }
                 /* Skontiert buchen */
                 if ($rechnungs_betrag == $r->rechnungs_skontobetrag && $rechnungs_betrag < $r->rechnungs_brutto) {
                     $mwst = $skonto / (100 + $mwst_satz) * $mwst_satz;
                     $b->geldbuchung_speichern_rechnung($datum, $kto_auszugsnr, $belegnr, $vorzeichen . $skonto, $vzweck, $geldkonto_id, $kostentraeger_typ, $kostentraeger_id, $kostenkonto, $vorzeichen . $mwst);
                 }
             }
             // end while
         }
         // end if $numrows
         echo "RECHNUNG {$belegnr} wurde gebucht!<br>";
         // weiterleiten_in_sec('?daten=buchen&option=buchungs_journal', 2);
     } else {
         fehlermeldung_ausgeben("FEHLER: Kontierung {$kontierungs_status} ->Erfassungsnr: {$belegnr}");
         // weiterleiten_in_sec("?daten=rechnungen&option=rechnung_kontieren&belegnr=$belegnr", 3);
     }
 }
コード例 #3
0
 function rechnungsbuch_anzeigen_ein($arr)
 {
     if (isset($_REQUEST['xls'])) {
         ob_clean();
         // ausgabepuffer leeren
         $fileName = 'rechnungseingangsbuch' . date("d-m-Y") . '.xls';
         header("Content-type: application/vnd.ms-excel");
         header("Content-Disposition: attachment; filename={$fileName}");
         $beleg_link = '';
     }
     echo "<table class=\"sortable\">";
     echo "<thead>";
     echo "<tr>";
     echo "<th id=\"tr_ansehen\">Ansehen</th>";
     echo "<th >LFDNR</th>";
     echo "<th >R-Datum</th>";
     echo "<th >Rechnungssteller</th>";
     echo "<th >RECHUNGSNR</th>";
     echo "<th >Leistung/Ware</th>";
     echo "<th >Brutto</th>";
     echo "<th >Skonto</th>";
     echo "<th >Gutschriften<br>Returen</th>";
     echo "<th >WEITERB.</th>";
     echo "<th >SALDO</th>";
     echo "</tr>";
     echo "</thead>";
     $r = new rechnung();
     $anzahl = count($arr);
     $sum_weiterberechnet = 0;
     $g_brutto_r = 0;
     $g_brutto_g = 0;
     $g_netto = 0;
     $g_skonto = 0;
     $g_mwst = 0;
     if ($anzahl > 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</>\n";
              * }
              */
             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_aussteller_name = substr($r->rechnungs_aussteller_name, 0, 48);
             $status_kontierung = $r->rechnung_auf_kontierung_pruefen($belegnr);
             // echo $status_kontierung;
             if ($status_kontierung == 'unvollstaendig') {
                 echo "<tr style=\"background-color:#ff778c\">";
             }
             if ($status_kontierung == 'vollstaendig') {
                 echo "<tr style=\"background-color:#bcd59f\">";
             }
             echo "<td id=\"td_ansehen\">{$beleg_link}<br>{$pdf_link} {$pdf_link1}</td><td>{$r->empfaenger_eingangs_rnr}</td><td>{$r->rechnungsdatum}</td>";
             /* Prüfen ob die rechnung temporär zur Buchungszwecken an Rechnungsausstellr kontiert */
             if ($this->check_kontierung_rg($belegnr, $r->rechnungs_aussteller_typ, $r->rechnungs_aussteller_id) == true) {
                 echo "<td style=\"background-color:#f8ffbb\">{$r->rechnungs_aussteller_name}</td>";
             } else {
                 echo "<td>{$r->rechnungs_aussteller_name}</td>";
             }
             echo "<td><b>{$r->rechnungsnummer}</b></td>";
             echo "<td>{$r->kurzbeschreibung}</td>";
             $r->rechnungs_skontoabzug_a = nummer_punkt2komma($r->rechnungs_skontoabzug);
             if ($r->rechnungstyp == 'Rechnung' or $r->rechnungstyp == 'Teilrechnung' or $r->rechnungstyp == 'Schlussrechnung') {
                 $r->rechnungs_brutto_a = nummer_punkt2komma($r->rechnungs_brutto);
                 echo "<td align=\"right\" valign=\"top\">{$r->rechnungs_brutto_a} </td><td align=\"right\" valign=\"top\">{$r->rechnungs_skontoabzug_a}</td><td></td>";
                 $g_brutto_r += $r->rechnungs_brutto;
                 // $g_brutto_r= sprintf("%01.2f", $g_brutto_r);
             }
             if ($r->rechnungstyp == 'Gutschrift' or $r->rechnungstyp == 'Stornorechnung') {
                 $r->rechnungs_brutto_a = nummer_punkt2komma($r->rechnungs_brutto);
                 echo "<td></td><td align=\"right\" valign=\"top\">{$r->rechnungs_skontoabzug_a}</td><td align=\"right\" valign=\"top\">{$r->rechnungs_brutto_a} </td>";
                 $g_brutto_g += $r->rechnungs_brutto;
                 // $g_brutto_g= sprintf("%01.2f", $g_brutto_g);
             }
             $summe_weiterbelastung_a = nummer_punkt2komma($this->get_weiterbelastung($belegnr));
             $summe_weiterbelastung = nummer_komma2punkt($summe_weiterbelastung_a);
             $sum_weiterberechnet += $summe_weiterbelastung;
             echo "<td>{$summe_weiterbelastung_a}</td>";
             $saldo_rg = $summe_weiterbelastung - $r->rechnungs_brutto;
             $saldo_rg_a = nummer_punkt2komma($saldo_rg);
             if ($saldo_rg >= 0) {
                 echo "<td style=\"background-color:#bcd59f\">";
             } else {
                 // braun ==c48b7c
                 if ($this->check_kontierung_rg($belegnr, $r->rechnungs_empfaenger_typ, $r->rechnungs_empfaenger_id) == true) {
                     echo "<td style=\"background-color:#c48b7c\">";
                 } else {
                     echo "<td style=\"background-color:#ff778c\">";
                 }
             }
             echo "{$saldo_rg_a}</td>";
             echo "</tr>";
             $g_netto += $r->rechnungs_netto;
             // $g_netto= sprintf("%01.2f", $g_netto);
             $g_mwst += $r->rechnungs_mwst;
             // $g_mwst= sprintf("%01.2f", $g_mwst);
             $g_skonto += $r->rechnungs_skontoabzug;
             // $g_skonto= sprintf("%01.2f", $g_skonto);
         }
         // echo "<tr><td colspan=\"9\"><hr></td></tr>";
         $g_brutto_r = nummer_punkt2komma_t($g_brutto_r);
         $g_brutto_g = nummer_punkt2komma_t($g_brutto_g);
         $g_skonto = nummer_punkt2komma_t($g_skonto);
         $sum_weiterberechnet_a = nummer_punkt2komma_t($sum_weiterberechnet);
         echo "<tfoot><tr><td id=\"td_ansehen\"></td><td></td><td></td><td></td><td></td><td></td><td align=\"right\"><b>{$g_brutto_r}</b></td><td align=\"right\"><b>{$g_skonto}</b></td><td><b>{$g_brutto_g}</b></td><td><b>{$sum_weiterberechnet_a}</b></td><td align=\"right\"></td></tr></tfoot>";
     } else {
         echo "<tr><td colspan=9>Keine Rechnungen in diesem Monat</td></tr>";
     }
     echo "</table>";
 }