Berichte erstellen
Hier können Sie sich eigene Berichte mit Hilfe von SQL Statements anlegen und als PDF/CSV exportieren, oder per FTP und E-Mail versenden.
Feldeinstellungen
Im Reiter "Einstellungen" werden die benötigten Informationen für den Bericht eingetragen.
In den Feldern ist dabei Folgendes einzugeben:- Name: Der Name des Berichts (kann frei gewählt werden)
- Projekt (optional): Projekt des Berichts
- Beschreibung (optional): Beschreibung, was der Bericht anzeigt
- Variablen (optional): Definition von Variablen, die dann im SQL-Statement dementsprechend ersetzt werden
- Struktur: SQL-Statement, dass die Struktur des Berichts festlegt
- Spaltenname: Bezeichnung der Spalten, in denen die Daten auftauchen (z.B. Datum, Kunde, Betrag)
- Spaltenbreite (optional): Spaltenbreite in Millimetern (Gesamtbreite beträgt 190mm)
- Spaltenausrichtung (optional): Ausrichtung des Textes in allen Feldern der Spalte, R (rechtsbündig), L (linksbündig), oder C (zentriert)
- Interne Bemerkung (optional): Interne Anmerkung (taucht nicht im Bericht auf)
Falls Sie Links in Ihr SQL Statement einbauen möchten, müssen Sie die entsprechende Spalte mit einem CONCAT Befehl erweitern und die aufzurufende URL einbauen.
Beispiel: Sie wollen bei der Artikelnummer einen Link
Alt:
SELECT a.nummer FROM ...
Neu:
SELECT CONCAT('',a.nummer,'') FROM ...
Damit erhalten Sie in der Live-Tabelle einen Link, der Sie direkt auf die Artikelseite bringt.
Die entsprechende Syntax für das Feld Variablen sieht wie folgt aus (Semikolon am Ende nicht vergessen):
{DATUMVON} = 2018-10-01;
Im Bericht werden die Variablen folgendermaßen eingefügt:
FTP-Übertragung und E-Mail
Erstellte Berichte können über FTP übertragen sowie in regelmäßigen Abständen und zu bestimmten Zeitpunkten per E-Mail versendet werden. Die Funktion muss dazu aktiviert und alle Felder gefüllt werden.
Felder für FTP Übertragung- Typ: FTP, FTP mit SSL, oder SFTP
- FTP Host: Der Hostname des Ziel FTP Servers
- FTP Port: Der Port des Ziel FTP Servers, falls leer wird der Standardport 21 für FTP Verbindungen verwendet
- FTP Benutzer: Der Benutzer des Ziel FTP Servers
- FTP Passwort: Das Passwort des Ziel FTP Servers
- Uhrzeit: Uhrzeit, zu dem die Datei auf den Ziel FTP Server übertragen werden soll
- Dateiname: Name der Datei, die der Bericht ausgeben und übertragen soll (Die Endung des entsprechenden Dateityps muss mit angefügt werden, also z.B. .csv oder .txt)
Felder für E-Mail Versand- E-Mail Empfänger: E-Mail-Adresse, an die der Bericht versendet werden soll (mehrere Empfänger mit Semikolon trennen)
- E-Mail Betreffzeile: Betreff, den die E-Mail haben soll
- Uhrzeit: Uhrzeit, zu dem die E-Mail verschickt werden soll (Ankunft kann sich um ca. eine Minute verzögern)
- Dateiname: Name der Datei, die der Bericht ausgeben und versenden soll (Die Endung des entsprechenden Dateityps muss mit angefügt werden, also z.B. .csv oder .txt). Folgende Variablen können hier verwendet werden: {TIMESTAMP}, {DATUM}, und {BERICHTNAME}. Falls das Feld leer ist, wird der Standardname des Berichts verwendet.
Damit das Übertragen per FTP, oder das Verschicken der E-Mails funktioniert, muss der Prozessstarter Berichte FTP Übertragungen aktiv und richtig konfiguriert sein. So könnten die Einstellungen aussehen:Live-Ansicht
Im Reiter "Übersicht" haben Sie die Möglichkeit, das Ergebnis Ihrer Abfrage, direkt in einer Live-Tabelle (wie z.B. in Aufträgen, Adressen) anzeigen zu lassen und das Ergebnis zu prüfen.
Folgende Einstellungen wurden für obigen Bericht verwendet:
Berichtbeispiele
ZM
Struktur:
SELECT belegnr, datum, name, kundennummer, land, ustid, SUM(soll) as soll
FROM rechnung
WHERE land != '{LAND}' AND land IN ({EULAENDER}) AND status != 'angelegt' AND ustid != AND datum >= '{DATUMVON}' AND datum <= '{DATUMBIS}'
GROUP BY ustid
Variablen:
{LAND} = DE;
{DATUMVON} = 2019-01-01;
{DATUMBIS} = 2019-12-31;
{EULAENDER} = 'AT','BE','BG','CY','CZ','DE','DK','EE','ES','FI','FR','GB','GR','HR','HU','IE','IT','LT','LU','LV','MT','NL','PL','PT','RO','SE','SI','SK';
Spaltenname:
Rechnung;Datum;Kunden;Kdnr;Land;USTID;Betrag
Spaltenbreite:
20;25;65;15;10;30;25
Spaltenausrichtung:
L;L;L;L;L;L;L
Hinweis: Wollen Sie bei den Zahlen statt einem Punkt als Trennzeichen eher ein Komma haben (bsp: 13,10 statt 13.10), dann müssten Sie die Struktur entsprechend ändern:
FORMAT(soll,2,'de_DE')
Verkaufte Artikel (Gerät) ins Ausland
Struktur:
SELECT lieferschein_position.nummer, lieferschein_position.bezeichnung, lieferschein.land, round(auftrag_position.preis,2), (auftrag_position.preis * lieferschein_position.menge), lieferschein.auftrag, DATE_FORMAT(lieferschein.datum,'%d.%m.%Y'), artikel.geraet, lieferschein_position.menge
FROM lieferschein_position
LEFT JOIN lieferschein ON lieferschein.id=lieferschein_position.lieferschein
LEFT JOIN artikel ON artikel.id=lieferschein_position.artikel
LEFT JOIN auftrag_position ON auftrag_position.id=lieferschein_position.auftrag_position_id
WHERE artikel.geraet=1 AND lieferschein.land!='DE' AND lieferschein.datum >='2016-01-01' AND lieferschein.datum < '2016-07-31'
Spaltennamen:
Artikelnummer;Artikelbezeichnung;Land;AB Preis;AB;Datum;Gerät;Menge
Spaltenbreite:
20;50;10;20;20;20;20;20
Spaltenausrichtung:
L;L;L;L;L;L;L;L
Lieferschein mit Lieferadresse des Kunden und Produkt
Alle Kunden die ein bestimmtes Produkt bestellt haben (Artikel ID) aus Lieferscheinen über einen bestimmten Datumsbereich
Struktur:
SELECT l.belegnr, l.datum, l.name, l.ansprechpartner, l.abteilung, l.unterabteilung, l.adresszusatz, l.land, l.strasse, l.plz, l.ort, a.name_de, a.nummer
FROM lieferschein l
LEFT JOIN lieferschein_position lp ON lp.lieferschein=l.id
LEFT JOIN artikel a ON a.id=lp.artikel
WHERE lp.artikel=212 AND l.datum>='2017-08-01' AND l.datum <='2017-12-31' AND l.status='versendet'
Lagerbestand frei verfügbare Artikel
Struktur:
SELECT a.nummer, a.name_de, TRIM(IFNULL((SELECT SUM(lpi.menge) FROM lager_platz_inhalt lpi WHERE lpi.artikel=a.id),0)-IFNULL((SELECT SUM(ap.menge) FROM auftrag_position ap LEFT JOIN auftrag auf ON auf.id=ap.auftrag WHERE ap.artikel=a.id AND (auf.status='freigegeben' OR auf.status='versendet')),0))+0 FROM artikel a WHERE a.geloescht!=1
Alle Artikel mit Fremdnummern
Struktur:
SELECT artikel.nummer, artikel.name_de, artikelnummer_fremdnummern.nummer as fremdnummer, artikelnummer_fremdnummern.bezeichnung
FROM artikelnummer_fremdnummern
LEFT JOIN artikel ON artikel.id=artikelnummer_fremdnummern.artikel
Alle Kunden mit letztem Bestelldatum
Struktur:
SELECT MAX(datum), name, kundennummer
FROM auftrag
WHERE status!='angelegt' AND datum >='2018-01-01' AND datum<'2018-04-01'
GROUP by adresse
Mit Ausgabe Projekt und Projekt ID
Struktur:
SELECT MAX(a.datum), a.name, a.kundennummer , p.abkuerzung
FROM auftrag a
LEFT JOIN projekt p ON p.id=a.projekt
WHERE a.status!='angelegt' AND a.datum >='2018-01-01' AND a.projekt='1' AND a.datum<'2018-04-01'
GROUP by a.adresse
Rechnung mit manueller Zahlungsfestsetzung
Info: liefert alle Rechnungen als Bericht, die den Haken "Alle Einstellungen manuell festsetzen" gesetzt haben.
Struktur:
SELECT r.belegnr, r.datum, r.name
FROM rechnung r
WHERE r.mahnwesenfestsetzen='1'
Hinweis: Brauchen Sie eine speziellen Bericht, können Sie sich gerne an unseren Vertrieb wenden, damit wir Sie mit dem SQL Statement unterstützen können.