OpenXE/userdata/wiki/XentralHandbuch/changelog/berichte/content_1
2021-05-21 08:49:41 +02:00

1 line
9.9 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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