In Bearbeitung [WAWI-40779] Mahnstufen (bezahlt/nicht bezahlt) als eigene Ansicht

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
257
47
Großbettlingen
Wir hätten gerne eine eigene Übersicht der Mahnstufen eines Kunden. Im Bestfall kann man die einzeln aufgelisteten Stufen direkt anklicken ohne jedes mal den umständlichen Weg über "Zahlungen/Mahnlauf" gehen zu müssen.
Also quasi eine Ansicht wie der Tab "Rechnungen" nur eben für die einzelnen Mahnungen und den aktuellen Status.

Unbenannt.JPG

Herzliche Grüße
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
Das ist eine wirklich gute Idee. Sag mal an, welche Spalten Du da sehen wollen würdest, dann widersprech ich Dir kurz, schlage noch was anderes vor, wir einigen uns und ich schreibe Dir (und mir) die SQL-Abfrage ...
 

ManuelHudec

Sehr aktives Mitglied
24. Juli 2019
257
47
Großbettlingen
Gute Frage.

Also im Kundenprofil sollten folgende Spalten vorhanden sein:
- Mahnstufe
- Mahngebühr
- Angemahnt am
- Zahlungsziel (Datum)
- Karenzzeit
- Rechnungsbetrag
- Dazugehörige Auftragsnummer

Wenn möglich, wäre es super, die einzelnen Mahnstufen untereinander und nicht als "eine Position" anzuzeigen.
Bin gespannt, was du dazu ergänzen würdest :)

Beste Grüße
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
Hi @wasserfilter-experten,

das mit dem Widersprechen habe ich jetzt mal übersprungen und habe stattdessen eine Version erstellt, die ein paar mehr Variablen ausgibt, als Du angefordert hattest und die Idee ist, dass es eigentlich leicht für Dich und andere sein sollte, die Variablen per Cut & Paste umzustellen oder auch einzelne, die Ihr nicht haben wollt, zu löschen. Here we go ...
SQL:
SELECT t3.cBestellNr AS 'Auftragsnummer', t1.cRechnungsNr AS 'Rechnungsnummer', CONVERT(DECIMAL(10,2),fBruttoBetrag) AS 'Rechnungsbetrag',
DATEDIFF(day,DATEADD(day,t1.nZahlungsziel,t1.dErstellt),dMahndatum-1) AS 'Fälligkeitstage', nMahnstufeAktuell AS 'Mahnstufe',
CONVERT(DECIMAL(10,2),fGebuehrPauschal) AS 'Mahngebühr', CONVERT(DECIMAL(10,2),fGebuehr-fGebuehrPauschal) AS 'Mahnzinsen',
CONVERT(DECIMAL(10,2),fBruttoBetrag+fGebuehr) AS 'Gesamtforderung', CONVERT(VARCHAR(10),dMahndatum,104) AS 'Mahndatum',
CONVERT(VARCHAR(10),dZahlungsfrist,104) AS 'Zahlfrist', nKarenzzeit AS 'Karenzzeit' FROM dbo.trechnung t1
JOIN dbo.tZahlungsErinnerung t2 ON t2.kRechnung=t1.kRechnung
  AND NOT EXISTS
   (SELECT * FROM dbo.tZahlungsErinnerung tmp WHERE tmp.kRechnung=t1.kRechnung
                AND tmp.nMahnstufeAktuell > t2.nMahnstufeAktuell)
JOIN dbo.tBestellung t3 ON t3.tRechnung_kRechnung=t2.kRechnung
JOIN dbo.tkunde t4 ON t4.kKunde=t1.tKunde_kKunde
WHERE (dErledigt IS NULL) AND t1.tKunde_kKunde=@Key
GROUP BY t2.nMahnstufeAktuell, t3.cBestellNr, t1.cRechnungsNr, t2.fBruttoBetrag, t1.nZahlungsziel, t1.dErstellt, t2.dMahndatum,
   t2.fGebuehrPauschal, t2.fGebuehr, t2.dZahlungsfrist, t2.nKarenzzeit
ORDER BY t2.nMahnstufeAktuell DESC, t3.cBestellNr ASC

Wichtige Anmerkung: Die "Fälligkeitstage", die hier ausgegeben werden, sind nicht die aktuellen Fälligkeitstage, sondern die Fälligkeitstage zum Zeitpunkt der Erstellung der jeweiligen Mahnung! Wenn ihr stattdessen die Fälligkeitstage bis Heute haben wollt, müsst ihr nur die zweite Zeile wie folgt ersetzen...
SQL:
DATEDIFF(day,DATEADD(day,t1.nZahlungsziel,t1.dErstellt),GetDate()-1) AS 'Fälligkeitstage', nMahnstufeAktuell AS 'Mahnstufe',

Ich habe übrigens Deine Bitte, "die einzelnen Mahnstufen untereinander und nicht als eine Position anzuzeigen" nicht so ganz verstanden. Ich hab das jetzt mal so umgesetzt, dass nach Mahnstufen gruppiert ausgegeben wird und innerhalb jeder Mahnstufe aufsteigend nach Auftragsnummern sortiert wird. Das macht aus meiner Sicht die Dringlichkeit von oben nach unten klar sichtbar, aber falls das nicht das ist, was Du meinstest, lass' es mich wissen.

Die Spaltennamen sind recht "sprechend" also lang gewählt und es sieht vielleicht so aus, als ob die Anzeigespalten wegen der Labels so breit wären. Das stimmt aber nicht, die Spaltenbreite ist von JTL so vorgegeben. Da ist definitiv noch etwas zu verbessern, zumal dadurch maximal 7 Spalten auf den Schirm passen und was passiert, wenn es mehr als 7 sind, sieht man auf dem folgenden Screenshot.

JTLWawi_1.5.10.0_EigeneÜbersichtenKunden_Platzmangel.png

Dann wird nämlich noch ein horizontaler Scrollbalken eingeblendet und dadurch dass die unteren beiden Fenster auch bei FullHD nur extrem flach sind und sich die Ansicht "Kunde 2.0" auch nicht deren manuell veränderte Höhe (und natürlich auch nicht eine manuell eingestellte Fensterbreite) merkt, startet die Wawi jedes Mal mit einem Fensterzustand, bei dem nicht eine einzige (aka "keine") Mahnzeile sichtbar ist und man nach jedem Auftruf der Wawi erst einmal das untere Fenster im Bereich Kunde von Hand nach oben ziehen muss, um überhaupt zu sehen, ob es hier etwas zu sehen gibt, was schon an "tierisch nervig" grenzt.

Aber JTL ist ja (zu Recht) sehr stolz auf die neuen "Eigenen SQL Übersichten" und vielleicht hilft das ja (zusammen mit unseren Klagen), um hier (relativ) schnell Abhilfe zu schaffen. Denn so wie es jetzt ist mit den viel zu geringen Fensterhöhen und der Vergesslichkeit der Wawi, was den Fensterzustand angeht, kann man die SQL Übersichten gleich wieder vergessen, echt frei nach dem Motto "Aus dem Auge, aus dem Sinn!" ... o_O

Gruß,
Ingmar
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
395
Hallo Manuel,

die Frage geht eigentlich nicht an mich, sondern an JTL, denn per Klick ein internes Dokument zu öffnen hat ja nichts mit SQL zu tun, sondern mit programmierter Logik. Und JTL gibt uns ja hier sozusagen nur "ein Plätzchen frei" wo wir per SQL Abfrage Daten darstellen dürfen. Wie die Daten dann von der Wawi interpretiert werden und was dann mit den Daten geht, darauf haben wir absolut 0,000% Einfluß.

Ich habe zum Beispiel gerade einmal den SQL Code so geändert, dass in der ersten Spalte immer eine gültige URL steht, sagen wir mal "http://www.nasa.gov". Das wird dann auch brav in der Tabelle angezeigt, aber die Idee, die Wawi könnte das als URL erkennen und intern schon darauf vorbereitet sein, bei einem Doppelklick darauf einen externen Browser zu starten und die URL-Seite anzuzeigen, ist eben leider naiv ...

Das Ganze wäre aber auch für JTL nicht ganz so einfach umzusetzen, denn dazu müsste die Wawi ja wissen, oder irgendwie zusammen mit der SQL Datentabelle mitgeteilt bekommen, was für Daten jede Spalte enthält, was für Objekte (Rechnung, Auftrag, Mahnung, ...) das also sind und wie darauf mit einem Doppelklick reagiert werden soll. Sicher, das wäre echt cool, wenn wir derart "tief" mit der Wawi interagieren könnten, aber davon sind wir leider meilenweit entfernt.

Gruß,
Ingmar
 

fibergirl

Sehr aktives Mitglied
14. April 2016
829
253
Tja, getan hat sich in dieser Sache ja nichts, aber das SQL von @gutberle funktioniert auch in der Wawi 1.6 (bis jetzt) immer noch tadellos!
Vielen Dank dafür!

Gruß,
fibergirl
 

fibergirl

Sehr aktives Mitglied
14. April 2016
829
253
Ich habe jetzt Dein SQL für uns etwas abgewandelt, um eine komplette Mahnhistorie für den Kunden anzuzeigen.

Das Feld dbo.tZahlungsErinnerung.dErledigt funktioniert für mich nicht mehr, es bleibt immer Null auch wenn bezahlt ist.
Daher muss es jetzt stattdessen Rechnung.tRechnungEckdaten.dBezahlt sein.
Für Wawi 1.5 könnte man aber wohl immer noch dErledigt nehmen, das kann ich leider nicht feststellen.

Dies ist für Wawi 1.6:
SQL:
SELECT
nMahnstufeAktuell AS 'Mahnstufe',
CONVERT(VARCHAR(10),t2.dMahndatum,104) AS 'Mahndatum',
CONVERT(VARCHAR(10),t2.dZahlungsfrist,104) AS 'Zahlfrist',
t1.cRechnungsNr AS 'Rechnung',
t3.cBestellNr AS 'Auftrag',
CONVERT(DECIMAL(10,2),fBruttoBetrag) AS 'Betrag',
DATEADD(day,t1.nZahlungsziel,t1.dErstellt) AS 'Fällig seit',
DATEDIFF(day,DATEADD(day,t1.nZahlungsziel,t1.dErstellt),GetDate()-1) AS 'Fällig Tage',
CONVERT(VARCHAR(10),t5.dBezahlt,104) AS 'Bezahlt',
CONVERT(DECIMAL(10,2),fGebuehrPauschal) AS 'Mahngebühr',
CONVERT(DECIMAL(10,2),fGebuehr-fGebuehrPauschal) AS 'Mahnzinsen',
CONVERT(DECIMAL(10,2),fBruttoBetrag+fGebuehr) AS 'Gesamtforderung',
nKarenzzeit AS 'Karenzzeit'
FROM dbo.trechnung t1
JOIN dbo.tZahlungsErinnerung t2 ON t2.kRechnung=t1.kRechnung
JOIN dbo.tBestellung t3 ON t3.tRechnung_kRechnung=t2.kRechnung
JOIN dbo.tkunde t4 ON t4.kKunde=t1.tKunde_kKunde
JOIN Rechnung.tRechnungEckdaten t5 ON t5.kRechnung=t1.kRechnung
WHERE t1.tKunde_kKunde=@Key
ORDER BY t2.nMahnstufeAktuell DESC, t2.dMahndatum DESC, t3.cBestellNr ASC

Und dies für Wawi 1.5:
SQL:
SELECT
nMahnstufeAktuell AS 'Mahnstufe',
CONVERT(VARCHAR(10),t2.dMahndatum,104) AS 'Mahndatum',
CONVERT(VARCHAR(10),t2.dZahlungsfrist,104) AS 'Zahlfrist',
t1.cRechnungsNr AS 'Rechnung',
t3.cBestellNr AS 'Auftrag',
CONVERT(DECIMAL(10,2),fBruttoBetrag) AS 'Betrag',
DATEADD(day,t1.nZahlungsziel,t1.dErstellt) AS 'Fällig seit',
DATEDIFF(day,DATEADD(day,t1.nZahlungsziel,t1.dErstellt),GetDate()-1) AS 'Fällig Tage',
CONVERT(VARCHAR(10),dErledigt,104) AS 'Erledigt',
CONVERT(DECIMAL(10,2),fGebuehrPauschal) AS 'Mahngebühr',
CONVERT(DECIMAL(10,2),fGebuehr-fGebuehrPauschal) AS 'Mahnzinsen',
CONVERT(DECIMAL(10,2),fBruttoBetrag+fGebuehr) AS 'Gesamtforderung',
nKarenzzeit AS 'Karenzzeit'
FROM dbo.trechnung t1
JOIN dbo.tZahlungsErinnerung t2 ON t2.kRechnung=t1.kRechnung
JOIN dbo.tBestellung t3 ON t3.tRechnung_kRechnung=t2.kRechnung
JOIN dbo.tkunde t4 ON t4.kKunde=t1.tKunde_kKunde
WHERE t1.tKunde_kKunde=@Key
ORDER BY t2.nMahnstufeAktuell DESC, t2.dMahndatum DESC, t3.cBestellNr ASC

Gruß,
fibergirl
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: ManuelHudec
Ähnliche Themen
Titel Forum Antworten Datum
Artikel per Ameise mehreren Kategorien zuordnen - Artikeldatenimport in WaWi nicht mehr vorhanden JTL-Wawi 1.8 5
Artikelbeschreibung standardisiert von JTL-Wawi ziehen - Positionsname JTL-Wawi 1.8 5
Neu Der Shop schickt die Aufträge nicht mehr an die Wawi JTL-Shop - Fehler und Bugs 1
Verwendung der Statistik in Wawi 1.8: JTL-Wawi 1.8 2
Download Wawi Version 1.8.5.1 JTL-Wawi 1.8 5
Neu Änderung Kundennummern in WaWi - welche Auswirkungen? Gelöste Themen in diesem Bereich 3
Neu Datenmigration von anderer WaWi auf JTL-WaWi Starten mit JTL: Projektabwicklung & Migration 11
Beschaffung Bestandsplanung in JTL Wawi 1.8.10 JTL-Wawi 1.8 0
Neu Workflow bei Login in WMS / WAWI starten User helfen Usern - Fragen zu JTL-Wawi 10
Neu JTL POS wird nicht an WaWi angebunden Einrichtung / Updates von JTL-POS 2
Neu JTL Shop 5 Daten - In "leere" JTL Wawi Datenbank importieren - Ist das möglich? User helfen Usern - Fragen zu JTL-Wawi 8
Neu Woocomnerce Aufträge werden in WAWI erstellt aber nicht als bezahlt markiert WooCommerce-Connector 2
Neu ecomdata down? Hosting JTL Wawi nicht erreichbar User helfen Usern - Fragen zu JTL-Wawi 46
Kennzahlen Übersicht für JTL Wawi - Wirtschaftliche Auswertung JTL-Wawi 1.8 0
[JTL-WAWI API] MandatoryApiScopes / OptionalApiScopes JTL-Wawi 1.8 3
Neu Migration Shopware 5 auf 6 mit JTL-Wawi ohne Datenverlust Shopware-Connector 1
Neu Datenumzug von Xentral ERP Software auf JTL-Wawi Schnittstellen Import / Export 4
Neu Suche Download JTL WAWI 1.3.20.0 User helfen Usern - Fragen zu JTL-Wawi 8
[JTL-WAWI API] Bestellung mit Stücklistenartikel JTL-Wawi 1.8 5
Neu JTL-Wawi 1.9 Open Beta User helfen Usern - Fragen zu JTL-Wawi 1
Neu Verkaufspreis Differenz Shop und Wawi JTL-Shop - Fehler und Bugs 4
Wie kann ich etwas in der WAWI Datenbank per SQL ändern? JTL-Wawi 1.8 2
Testmandantenumgebung in Wawi als Duplikat vom Echtzeitmandanten erstellen? JTL-Wawi 1.8 5
Neu Zahlungsart Kartenzahlung bleibt in Wawi als Auftrag ohne Rechnung Allgemeine Fragen zu JTL-POS 4
Grundeinstellung WaWi Gramm statt Kilogramm JTL-Wawi 1.8 3
Neu Was steckt hinter der Zahl von 53 Bildern auf Ebay bei Variationsartikeln (und einer unsinnigen Fehlermeldung der Wawi)? JTL-Wawi - Fehler und Bugs 2
Neu JTL Wawi [1.5.33] Startet nicht mehr JTL-Wawi - Fehler und Bugs 8
Neu Wechsel WAWI Hosting von JTL mit RDP auf ecomDATA User helfen Usern - Fragen zu JTL-Wawi 2
WAWI 1.8.12.0 stürzt ab, wenn die Verbindung zur Datenbank unterbrochen wurde JTL-Wawi 1.8 21
Neu Neue Oberfläche Wawi 1.8.12.2 (Beta) JTL-Wawi - Ideen, Lob und Kritik 0
Neu Suche jemanden BmeCat´s in Wawi Dienstleistung, Jobs und Ähnliches 2
Neu Wawi Sicherheitslücke geschlossen? Details? User helfen Usern - Fragen zu JTL-Wawi 13
Neu Update des JTL shops aus der Wawi funktioniert nicht Allgemeine Fragen zu JTL-Shop 1
Neu >Merchant Center Feld Textzeile welches wawi Feld User helfen Usern - Fragen zu JTL-Wawi 3
Neu JTL Wawi Bild-Upload unvollständig oder nur als mit meinem PC hochgeladen zu sehen User helfen Usern - Fragen zu JTL-Wawi 2
WaWi Preisuntergrenze für Artikel festschreiben JTL-Wawi 1.7 4
Artikelabgleich verlangsamt sich automatisch von Wawi JTL-Wawi 1.8 2
Kundenattribute aus Shop übernehmen und aus Wawi zurück an Shop übermitteln Einrichtung JTL-Shop5 1
Neu WaWi auf Mac Installation von JTL-Wawi 3
Neu Email Versand in JTL Wawi einstellen User helfen Usern - Fragen zu JTL-Wawi 3
Neu Produktdaten aus Shop zur Wawi WooCommerce-Connector 9
Neu Kunden aus Wawi nicht auffindbar JTL-POS - Fehler und Bugs 5
Neu Fehler beim Zahlungsabgleich - Zahlungsmodul - Wawi 1.5.55.6 Gelöste Themen in diesem Bereich 14
Neu Attribut wc_product_type in Wawi nicht vorhanden Gelöste Themen in diesem Bereich 5
Neu JTL-Wawi Logdatei Speicherort JTL-Wawi - Fehler und Bugs 6
In Diskussion JTL POS Kundennummer wird nicht an JTL Wawi übertragen JTL-POS - Fehler und Bugs 2
Kann ich eine email an die Wawi senden durch die dann ein neuer Auftrag generiert wird? (Daten müssen händisch vervollständigt werden...) JTL-Wawi 1.8 2
Issue angelegt [WAWI-75449] Artikel duplizieren - ASIN wird nicht mit dupliziert. JTL-Wawi - Fehler und Bugs 1
Neu Kommentar verschwindet nach Wawi-Abgleich JTL-Shop - Fehler und Bugs 3
Neu Update von Wawi 17.15.4. auf 18.12.0 geht nicht, weil Primary voll ist JTL-Wawi - Fehler und Bugs 4

Ähnliche Themen