<html>
<head>
<? $mandant=$_COOKIE["mandant"];
$username=$_COOKIE["username"];
require"kopf.php"; include"funktionen.php";
echo("<link rel=\"stylesheet\" type=\"text/css\" href=\"styles.css\">");?>
<title>Verbuchen Mandant <? echo$mandant; ?> durch Benutzer <? echo$username; ?></title>
</head>
<body>
<a href="bu_erfassen.php?mandant=<? echo$mandant; ?>&username=<? echo$username; ?>">Zurück zur Buchungserfassung</a>
<br><a href="main.php">Zurück zum Hauptmenü</a>
<hr>
<h3>Die Buchungen werden geprüft</h3>
<table>
<tr>
<td>ID</td><td>Beleg</td><td>Datum</td><td>Soll</td><td>Haben</td><td>Betrag</td><td>USt %</td><td>Kommentar</td></tr>
<?
//Prüfen der Buchungen mittels Schleife
require"connect.php";
$q_count="SELECT count(*) FROM buchung_temp WHERE bt_manr = " . $mandant . " and bt_verbucht=0 ;";
$r_q_count=mysql_query($q_count);
$hilfe=mysql_fetch_row($r_q_count);
$satzanzahl_bu=$hilfe[0];
if($satzanzahl_bu>10000)
{
$satzanzahl_bu=10000;
echo("<br>Es müssen mehr als 10000 Datensätze verbucht werden; Bitte Verbuchen mehrfach aufrufen<br>");
}
#echo$satzanzahl_bu;
require"connect.php";
$query="SELECT * FROM buchung_temp WHERE bt_manr = " . $mandant . " and bt_verbucht=0 order by bt_magic;";
$result=mysql_query($query);
#$satzanzahl_bu=mysql_num_rows($result);
#echo$satzanzahl_bu;
for ($z=0; $z<$satzanzahl_bu; $z++)
{
$buchungssatz=mysql_fetch_row($result);
$bt_magic=$buchungssatz[0];
$bt_beleg=$buchungssatz[4];
$bt_datum=dbdate2datestring($buchungssatz[5]);
$bt_soll=$buchungssatz[2];
$bt_haben=$buchungssatz[3];
$bt_betragstring=number_format($buchungssatz[6],2,",",".");
$bt_ustprstring=number_format($buchungssatz[7],2,",",".");
$bt_kommentar=$buchungssatz[10];
$bt_user=$buchungssatz[11];
$bt_auszi=$buchungssatz[13];
$xy=0;
require"bt_datum.php";
if($bt_fehler == 1) $xy++;
require"bt_beleg.php";
if($bt_fehler == 1) $xy++;
require"bt_soll.php";
if($bt_fehler == 1) $xy++;
require"bt_haben.php";
if($bt_fehler == 1) $xy++;
require"bt_betrag.php";
if($bt_fehler == 1) $xy++;
require"bt_ustpr.php";
if($bt_fehler == 1) $xy++;
if($bt_user=="")
{
$q_user="UPDATE buchung_temp SET bt_user='" . $username . "' where bt_magic=" . $bt_magic . ";";
$r_user=mysql_query($q_user);
}
if($bt_auszi=="")
{
require"bt_auszi.php";
$q_auszi="UPDATE buchung_temp SET bt_auszi='" . $bt_auszi . "' where bt_magic=" . $bt_magic . ";";
$r_auszi=mysql_query($q_auszi);
}
if($xy==0)
{
$q_auszi="UPDATE buchung_temp SET bt_verbucht=2 where bt_magic=" . $bt_magic . ";";
$r_auszi=mysql_query($q_auszi);
}
// Wenn jetzt ein fehlerhafter Datensatz da ist, muss er angezeigt
// werden. Er kann dann mittels magic-Number zur Korrektur kommen
#echo$xy . $satzanzahl . "<br>";
if($xy >0)
{
echo("<td>" . $buchungssatz[0] . "</td>");
echo("<td>" . $buchungssatz[4] . "</td>");
$datumhilf=dbdate2datestring($buchungssatz[5]);
echo("<td>" . $datumhilf . "</td>");
echo("<td>" . $buchungssatz[2] . "</td>");
echo("<td>" . $buchungssatz[3] . "</td>");
echo("<td>" . number_format($bt_betrag,2 ,",", ".") . "</td>");
echo("<td>" . number_format($bt_ustpr,2, ",", ".") . "</td>");
echo("<td>" . $buchungssatz[10] . "</td>");
echo("</tr>");
echo("<tr><td></td>");
echo("<td>" . $er_bt_beleg . "</td>");
echo("<td>" . $er_bt_datum . "</td>");
echo("<td>" . $er_bt_soll . "</td>");
echo("<td>" . $er_bt_haben . "</td>");
echo("<td>" . $er_bt_betrag . "</td>");
echo("<td>" . $er_bt_ustpr . "</td>");
echo("</tr>");
}
}
mysql_free_result($result);
?>
</table>
<? echo("Es wurden " . $satzanzahl_bu . " Buchungen verarbeitet."); ?>
<hr>
<br>
<br>
<form type="POST" action="bt_verbuchen.php">
<input type="TEXT" name="buchung_id" value="<? echo$buchung_id; ?>">
<input type="SUBMIT" value="Prüfen">
<? if($buchung_id<>"")
{
echo("<a href=\"bt_korrektur.php?mandant=" . $mandant . "&username=" . $username . "&buchung_id=" . $buchung_id . "\" target=\"_blank\">Buchung korrigieren</a>");
}
?>
</form>
<hr>
<b>Umsatzsteuerermittlung läuft</b>
<?
echo("<table>");
//USt und VSt ermitteln und Buchungen updaten
// für das Sollkonto...
require"connect.php";
$queryu="SELECT * FROM buchung_temp WHERE bt_manr = " . $mandant . " and bt_verbucht=2;";
$resultust=mysql_query($queryu);
$satzanzahlust=mysql_num_rows($resultust);
for ($z=0; $z<$satzanzahlust; $z++)
{
$bt_vorsteuer=0; $bt_umsatzsteuer=0;
$buchung_ust=mysql_fetch_row($resultust);
$bt_magic=$buchung_ust[0];
$bt_beleg=$buchung_ust[4];
$bt_datum=dbdate2datestring($buchung_ust[5]);
$bt_soll=$buchung_ust[2];
$bt_haben=$buchung_ust[3];
$bt_betrag=$buchung_ust[6];
$bt_ustpr=$buchung_ust[7];
$bt_betragstring=number_format($buchung_ust[6],2,",",".");
$bt_ustprstring=number_format($buchung_ust[7],2,",",".");
$bt_kommentar=$buchung_ust[10];
$querys="SELECT * FROM konten WHERE kt_manr = " . $mandant . ";";
$result_soll=mysql_query($querys);
$saetze_soll=mysql_num_rows($result_soll);
for($i=0; $i<=$saetze_soll; $i++)
{
$sollkto=mysql_fetch_row($result_soll);
if($bt_soll == $sollkto[1] and
$sollkto[4] == 'V' and
$bt_ustpr <> 0)
{
$bt_vorsteuer = $bt_betrag*$bt_ustpr/(100+$bt_ustpr);
}
if($bt_soll == $sollkto[1] and
$sollkto[4] == 'U')
{
$bt_umsatzsteuer = -($bt_betrag*$bt_ustpr/(100+$bt_ustpr));
}
}
// für das Habenkonto
require"connect.php";
$query="SELECT * FROM konten WHERE kt_manr = " . $mandant . ";";
$result_haben=mysql_query($query);
$satzanzahl=mysql_num_rows($result_haben);
for($i=0; $i<=$satzanzahl; $i++)
{
$habenkto=mysql_fetch_row($result_haben);
$queryh="SELECT * FROM konten WHERE kt_manr = " . $mandant . ";";
$result_haben=mysql_query($queryh);
$saetze_haben=mysql_num_rows($result_haben);
for($i=0; $i<=$saetze_haben; $i++)
{
$habenkto=mysql_fetch_row($result_haben);
if($bt_haben == $habenkto[1] and
$habenkto[4] == 'V' and
$bt_ustpr <> 0)
{
$bt_vorsteuer = $bt_vorsteuer-($bt_betrag*$bt_ustpr/(100+$bt_ustpr));
}
if($bt_haben == $habenkto[1] and
$habenkto[4] == 'U')
{
$bt_umsatzsteuer = $bt_umsatzsteuer+($bt_betrag*$bt_ustpr/(100+$bt_ustpr));
}
}
}
// Jetzt müssen die buchungen upgedated werden
$queryupd="UPDATE buchung_temp set bt_vstbetrag=" . $bt_vorsteuer;
$queryupd=$queryupd . ", bt_ustbetrag=" . $bt_umsatzsteuer;
$queryupd=$queryupd . ", bt_verbucht=1 where bt_manr = " . $mandant . " and bt_magic=";
$queryupd=$queryupd . $bt_magic . ";";
$result_upd=mysql_query($queryupd);
if(mysql_errno() <> 0)
{
echo("<br><b>Fehler " . mysql_errno() . " beim Schreiben der Buchung!!!!</b>");
echo("<br>" . mysql_error());
die("<br><b>Ende der Verarbeitung</b>");
}
//echo("<tr><td>Buchung " . $bt_magic . "</td><td>VSt " . $bt_vorsteuer . "</td><td>USt " . $bt_umsatzsteuer . "</td></tr>");
}
mysql_free_result($resultust);
?>
<br>
<b>Verarbeitung beendet</b><br>
<a href="bu_erfassen.php?mandant=<? echo$mandant; ?>&username=<? echo$username; ?>">Zurück zur Buchungserfassung</a>
<br><a href="main.php">Zurück zum Hauptmenü</a>
</table>
</body>
</html>