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); } }
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); } }
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>"; }