Umsatzauswertungen
Es gibt verschiedene Möglichkeiten, die Umsätze zu analysieren. Wenn eine schnelle Auswertung erforderlich ist, gibt es eine gewisse Flexibilität im Skript SalesGraph.php, das Sie über Hauptmenü → Debitoren → Auswertungen und Berichte → Umsatzgrafik aufrufen, Es hängt natürlich von der Ebene ab, auf der Sie Planwerte hinterlegt haben, ob ein Plan-/Ist-Vergleich etwas Sinnvolles anzeigen wird. Wenn Sie einen Bericht zu den Istzahlen wünschen, so hat webERP einen Berichtsgenerator, mit dem Ergebnisberichte angelegt werden können. Die erzeugten Berichtsvorlagen können wiederholt ausgeführt oder aber abgeändert werden. Diese Berichte können sowohl eine PDF-Datei in Druckformatierung als auch csv-Dateien für die Verwendung in den meisten Tabellenkalkulationen ausgeben.
Sie wählen Hauptmenü → Debitoren → Auswertungen und Berichte → Umsatzanalysen. Eine Liste aller bereits früher angelegten Berichte erscheint, einschließlich Links, über die Sie

- den Entwurf des Berichtskopfes ändern
- in der Definition des Berichtes die Spalten festlegen
- den Bericht ausführen und eine PDF-Datei erstellen
- den Bericht ausführen und eine CSV-Datei erstellen, die mit einer Tabellenkalkulation gelesen werden kann.

Darüber hinaus können Sie im unteren Teil der Seite neue Berichte definieren, um die meisten Kombinationen von Umsatzdaten anzuseigen. Im System wird eine separate Tabelle von Umsatzdaten geführt, die es ermöglichen, dass diese Berichte so schnell wie möglich ausgeführt werden können.
Ein Ergebnisbericht besteht aus

- der Kopfdefinition
- den Spaltendefinitionen

Kopf des Ergebnisberichtes
Der erste Schritt beim Erstellen eines Ergebnisberichtes ist das Eingeben der Kopfinformationen. Diese beinhalten:

- Die Berichtsüberschrift, eine Zeichenkette, die den Bericht beschreibt.
- Bis zu vier Gruppenebenen und die Auswahlkriterien für jede Ebene.

Jede Gruppenebene besteht aus einer der folgenden Merkmale:

- Vertriebsbereiche
- Materialnummer
- Kundennummer
- Umsatzart/Preisliste
- Warengruppe
- Kundenniederlassung
- Verkäufer

Der Bericht gruppiert die Daten auf jeder Ebene entsprechend der definierten Reihenfolge, wenn Sie z. B. einen Bericht definieren mit Materialnummer als Gruppenebene 1 und die Vertriebsbereiche als Gruppenebene 2, dann zeigt der Bericht die Materialnummern und darunter die Vertriebsbereiche, an die die Waren verkauft wurden. Meist würde es die logischere Reihenfolge sein, die Vertriebsbereiche als Gruppenebene 1 und die Materialnummer als Gruppenebene 2 anzuzeigen, damit der Bericht erläutert, aus welchen Produkten sich der Umsatz in einem Vertiebsbereich zusammensetzt.
Für jede Gruppenebene muss ein Von-Bis-Bereich als Selektion angegeben werden. Alle Kriterien beziehen sich auf das Merkmal in der jeweiligen Gruppenebene. Für das Merkmal Vertriebsbereich müssen Sie zum Beispiel die 2 Zeichen langen Schlüssel der Vertriebsbereiche, nicht deren Beschreibung angeben. Außerdem muss der Von-Wert kleiner sein als der Bis-Wert, andernfalls gibt der Bericht keine Werte aus.
Spalten der Ergebnisberichte
Wenn Sie einen Kopf für den Bericht angelegt haben, dann können die Spalten definiert werden. Die Spalten vorhandener Berichte können jederzeit geändert werden. Aus der Seite Umsatzbericht pflegen (Hauptmenü → Debitoren → Auswertungen und Berichte → Umsatzanalysen) ist bei jedem Bericht ein Link "Spalten festlegen". Über diesen Link werden die für den Bericht definierten Spalten angezeigt, zusammen mit einem Formular, in dem Sie neue Spalten anlegen können. Für jede definierte Spalte sind die folgenden Angaben nötig:

- Eine Spaltennummer zwischen 1 und 10. Die Nummer bestimmt, an welcher Stelle die Spalte auf der Seite ausgegeben wird. Die Spalte 1 ist am weitesten links und die Spalte 10 am rechten Rand der Seite.
- Zwei Felder sind für die Spaltenüberschrift vorhanden. In jedes passt ein Text mit maximal 15 Zeichen Länge.
- Ob es sich um eine Rechenspalte handelt oder nicht. Für Rechenspalten sind andere Angaben erforderlich, als für normale Datenspalten.
- Für normale Datenspalten ist ein Periodenzeitraum für die anzuzeigenden Daten erforderlich. In die Felder Von Periode und Bis Periode muss jeweils eine Zahl eingegeben werden. Weil Perioden vom System annähernd unsichtbar im Hintergrund verwaltet werden, haben Sie über den Link "Perioden anzeigen" die Möglichkeit zu prüfen, in welchen Perioden irgendwelche Zahlen vorhanden sein können. Wenn ein einzelner Monat gewünscht ist, ist der Wert in Von Periode und Bis Periode gleich.
- Die Art der Daten, die in der Spalte angezeigt werden sollen kann aus der folgenden Auswahl festgelegt werden: Menge, Bruttoerlös, Nettoerlös (nach Rabatten), Bruttoergebnis, Kosten und Rabatt.
- Planwerte oder Istwerte.

Wenn die Spalte als Rechenspalte definiert wird, ist weder die Angabe der Perioden erforderlich, noch die der Datenart und ob Plan oder ist. Wenn Sie das Feld Berechnung geändert haben, müssen Sie zunächst auf Speichern klicken, dadurch werden die für Rechenspalten notwendigen Felder angezeigt:

- Zählerspalte - Das ist die Spaltennummer für den ersten Operanden der Berechnung, diese Spalte muss immer angegeben werden.
- Nennerspalte - Das ist die Spaltennummer für den zweiten Operanden der Berechnung, wenn die Berechnung über zwei Spalten erfolgen soll. Wenn die Berechnung mit einer Konstante durchgeführt werden soll, lassen Sie dieses Feld leer.
- Das Rechenzeichen wird aus folgenden Angaben ausgewählt.
  1. Zählerspalte geteilt durch Nennerspalte
  2. Zählerspalte geteilt durch Konstante
  3. Zählerspalte x Kontstante
  4. Zählerspalte plus Nennerspalte
  5. Zählerspalte minus Nennerspalte
- Die Kostante kann eine beliebige Zahl sein, die in der Berechnung verwendet wird.
- Das Format erlaubt es, das Ergebnis als Zahl oder als Prozentwert auszugeben.

Wenn Sie den Knopf Speichern drücken, wird die Spalte in die Berichtsdefinition eingefügt. Sie sollte dann in der Liste der definierten Spalten angezeigt werden und die Formularfelder sind wieder frei für die Erfassung einer neuen Spalte. Wenn Sie eine Spalte nicht mehr benötigen, gibt es auch einen Link zum Löschen.
Die Spaltennummer selbst ist ein Link, über den Sie die Definition der Spalte verändern können. Die Definition wird im Eingabeformular angezeigt, falls Änderungen nötig werden. Beachten Sie bitte, dass sich die Spaltennummer selbst nicht ändern lässt.
Wenn Sie den Link Überschriften pflegen drücken wird wieder die Liste der angelegten Berichte angezeigt, um weitere Änderungen vornehmen zu können oder einen Bericht auszuführen. Um den Bericht auszuführen, klicken Sie einfach auf den Link "PDF erstellen" des Berichtes.
Diese Ergebnisberichte haben eine große Menge von Informationen auszuwerten (und die Berichte werden dynamisch generiert). Im Ergebnis können sie bei großen Datenbanken durchaus eine Minute oder so laufen. Dennoch wurde das Design der Datenbank sehr sorgfältig vorgenommen, um zu sichern, dass die Berichte entscheidend schneller als bei anderen Auswertungswerkzeugen erstellt werden.
Automatisierung der Ergebnisberichte
Wenn Sie die Berichte angelegt haben, ist es möglich, die Ergebnisberichte per Email an festgelegte Empfänger zu versenden. Ein Skript MailSalesReport.php ist eine Vorlage, um so etwas zu tun. Es gibt keine Links zu diesem Skript, und es ist auch keine Berechtigungsebene dafür festgelegt worden. Alles was Sie tun müssen, ist dieses Skript unter einem anderen Namen mit der Erweiterung .php im selben Verzeichnis, in dem auch die anderen Skripte liegen zu speichern.
Das Skript muss bearbeitet werden, um die Email-Adressen der Empfänger und die Berichts-Nr. des auszuführenden Berichtes einzutragen. Die zu bearbeitenden Zeilen sind:
/*The Sales report to send */
$ReportID = 4;
/*The people to receive the emailed report */
$Recipients = array('"Root" <root@localhost>','"some one else" <someoneelese@sowhere.com>');
Die mit /* und */ eingeklammerten Zeilen sind Kommentare.
Wenn die Variable $ReportID nach Ihrer Wahl gesetzt ist und alle Empfänger eingetragen sind, sichern Sie die Datei.
Um den Bericht einzuplanen, würde ein crontab-Eintrag unter Linux, der den Bericht an jedem Wochentag um 0:00 startet, wie folgt aussehen (angenommen sei: wget ist in /usr/bin/wget, der Webserver läuft auf dem gleichen Rechner und das neue Skript heißt DailySalesReport.php):
# Scheduled email of a daily sales report
0 0 * * 2-5 root /usr/bin/wget http://localhost/web-erp/DailySalesReport.php
Weil die Seite selbst keine Ausgabe am Bildschirm bewirkt, würde sie im Webbrowser nichts anzeigen, obgleich sie natürlich eine weitere Email an die festgelegten Empfänger auslösen würde.
Ein vergleichbares Vorlageskript ist unter dem Namen MailSalesReport_csv.php vorhanden, das in der gleichen Weise den Bericht als CSV-Datei an die festgelegten Empfänger versendet. Eine elegantere Lösung, automatisch Umsatzberichte mit email zu versenden, ist die verwendung des Skriptes report_runner.php. Dieses Skript kann direkt von der Kommandozeile gestartet werden oder con cron gestartet werden und verwendet Kommandozeilenparameter. Das den Vorzug gegenüber der festen Programmierung einer Vielzahl von Skripten, ist dass dieses mit den folgenden Parametern gestartet werden kann:
-r reportnumber (die Nummer des webERP-Berichtes)
-n reportname (der Name, dem Sie dem webERP-Bericht geben wollen)
-e emailaddress[;emailaddress;emailaddres...] (an wen Sie den Bericht senden wollen)
[-t reporttext ] (Einige Bemerkungen, die Sie mit dem Bericht in der email vesenden wollen)
[ -H weberpHOME] (das Homeverzeichnis von webERP - oder Sie bearbeiten die php-Datei)