Neu Workflow zur Ausgabe von Daten als CSV

volvisti

Sehr aktives Mitglied
18. Juli 2017
311
43
Hallo Zusammen,
habe mich nun bestimmt drei Stunden durch Netz, das Froum und die Doku zu DotLiquid gequält.
Leider ohne nennenswerte Erfolge.:(

Das SQL-Statement
select
k.cInhaber,
k.cIBAN,
k.cBIC,
g.cGutschriftNr + ' - Vielen Dank fuer die Unterstuetzung',
round(g.fPreis,2,0)
from dbo.tkontodaten k, dbo.tgutschrift g
where g.cstatus = 'GÜ'
and k.kkunde = g.kkunde;

holt mir die Rechnungskorrekturdaten aus der Db, die ich dann mit einem externen Programm in ein SEPA-Überweisungs-XML umwandeln kann.

Nun möchte ich das Ganze aber vereinfachen, denn bisher muss ich das Statement in Heidi-SQL ausführen, das Ergebnis als csv speichern und kann es dann weiter bearbeiten.

Mein Wunsch ist ein manueller Worklfow, der über die erweiterten Anweisungen das Statement als Dotliquid ausführt und in einem Netzordner die CSV ablegt.

Bei der Übersetzugn des Statements in DotLiquid bin ich kläglich gescheitert und habe auch nichts Aussagekräftiges gefunden, weder auf deutsch noch auf englisch.

Wo habt Ihr Euer Wissen über DotLiqiud her?
Mag mir jemand helfen?
Täte mich sehr freuen.
 

volvisti

Sehr aktives Mitglied
18. Juli 2017
311
43
Hallo René,
danke für Deine Antwort.
Dort hatte ich schon nachgesehen, war aber nicht wirklich schlau aus der Abfrage geworden.
https://guide.jtl-software.de/JTL-Wawi:DotLiquid:Anwendungsbeispiele:Direkter_Datenbank-Zugriff

Diese Seite hat mir etwas besser weitergeholfen, weil zumindest rudimentär beschrieben.
Darf ich Dich Bitten mal einen Blick auf meine DotLiquid Abfrage zu werfen und mir zu schreiben, wo der Fehler ist?

Nach der Logik des Beispiels auf der obigen Seite müßte das hier doch eigentlich zum Erfolg führen, oder?

{ % assign A1 = 'select * from tgutschrift' | DirectQuery -% }
{ % for item in A1.daten % }

{ % capture itemquery % } select * from tkontodaten where kkunde = {{item.kkunde | SQLEscape }} and {{item.cStatus}} = 'GÜ' { % endcapture -% }

{ % assign A2 = itemquery | DirectQuery -% }
{ % for item2 in A2.Daten % }

{{ item2.cInhaber }};{{ item2.cIBAN }};{{ item2.BIC }};{{ item.cGutschriftNr }} Vielen Dank fuer die Unterstuetzung;{{item.fpreis| Nummer: N2}}

{ % endfor -% }
{ %endfor -% }


Ich lese erst die Daten der einen Tabelle aus und speichere sie in der Variablen A1, dann starte ich die Schleife, damit grundsätzliich die Daten der Gustschriften ausgegeben werden.
Mit Capture lese ich dann die zweite Tabelle aus und setze die Bedingungen (aus SQL g.cstatus = 'GÜ' and k.kkunde = g.kkunde)
Abspeichern in Variable A2
Dann lasse ich die Daten ausgeben, durch ';' getrennt.
Nur wird mir im Vorschau-Fenster das Statement angezeigt und nicht die Daten.
Die eigentlich Ausgabezeile sieht dann so aus: ;;; Vielen Dank fuer die Unterstuetzung;0,00
Das ist wenig zielführend :(
Schreibe ich die Abfrage um, d.h. lasse ich die Tabellen in der umgekehrten Reihenfolge auslesen, bleiben die Vorschau-Fenster komplett leer.

Ich denke, ich habe da entweder ein Logik- oder ein Übersetuzungsproblem, denn das SQL-Statement selbst bringt in Heidi-SQL das gewünschte Ergebnis.

Ich hoffe/denke, es ist nur eine Kleinigkeit.
Danke schon mal und noch einen schönen Abend.
 

Shopküche.de

Offizieller Servicepartner
SPBanner
Hallo René,


{ % assign A1 = 'select * from tgutschrift' | DirectQuery -% }
{ % for item in A1.daten % }

{ % capture itemquery % } select * from tkontodaten where kkunde = {{item.kkunde | SQLEscape }} and {{item.cStatus}} = 'GÜ' { % endcapture -% }

{ % assign A2 = itemquery | DirectQuery -% }
{ % for item2 in A2.Daten % }

{{ item2.cInhaber }};{{ item2.cIBAN }};{{ item2.BIC }};{{ item.cGutschriftNr }} Vielen Dank fuer die Unterstuetzung;{{item.fpreis| Nummer: N2}}

{ % endfor -% }
{ %endfor -% }


I


Ich kanns gerade nicht prüfen ob das Ergebnis so passt, aber die ganzen Leerzeichen nach und vor den Tags "{" und "}" sind das Problem.
Anbei der bereinigte Code der bei mir zumindest teilweise Daten ausgibt. Liegt aber wohl eher daran das mein Testsystem keine Gutschriften mit IBAN etc hat.

Code:
{% assign A1 = 'select * from tgutschrift' | DirectQuery -%}
{% for item in A1.daten %}

{% capture itemquery %} select * from tkontodaten where kkunde = {{item.kkunde | SQLEscape }} and {{item.cStatus}} = 'GÜ' {% endcapture -%}

{% assign A2 = itemquery | DirectQuery -%}
{% for item2 in A2.Daten %}

{{ item2.cInhaber }};{{ item2.cIBAN }};{{ item2.BIC }};{{ item.cGutschriftNr }} Vielen Dank fuer die Unterstuetzung;{{item.fpreis| Nummer: N2}}

{% endfor -%}
{% endfor -%}
 

volvisti

Sehr aktives Mitglied
18. Juli 2017
311
43
Hallo René
leider klappt es mit Deinem Code auch nicht.
Hab schon den Status von GÜ zu GU geändert, um die Problematik mit den Umlauten auszuschließen.

Hast Du noch eine Idee?
 

Shopküche.de

Offizieller Servicepartner
SPBanner
Hallo René
leider klappt es mit Deinem Code auch nicht.
Hab schon den Status von GÜ zu GU geändert, um die Problematik mit den Umlauten auszuschließen.

Hast Du noch eine Idee?
Ich muss nochmal fragen was genau du machen willst und an welcher Stelle du dieses DotLiquid unterbringen willst. Das du Gutschriften aus dem System ziehen willst mit Bankverbindung und Betrag ist mir soweit klar, aber was ist der Status "GÜ"? Wo willst du das DotLiquid ausführen? (Manueller Workflow?) Sollen alle Gutschriften eines Kunden angezeigt werden oder nur die, die noch nicht gutgeschrieben worden sind?

Das obige DotLiquid bringt mir in meinem Testsystem schon ein Ergebnis, aber ich weiß nicht ob es das ist was du vorhast.
 

volvisti

Sehr aktives Mitglied
18. Juli 2017
311
43
Hallo René,
Danke für Deine Unterstützung.

Im Grunde ist mein Anliegen ganz einfach.

Wir legen Honorargutschriften in der Rubrik "Rechnungskorrekturen" an.
Diese werden mit dem Status GÜ (für Geschäftskunden Überweisung) versehen.
Derzeit machen wir es so, wie oben beschrieben. Statement in HeidiSQL ausführen, Ergebnis als CSV-Datei speichern....
Diesen Schritt möchte ich vereinfachen und ihn als manuellem Workflow in die JTL-Oberfläche integrieren.

Der Schritt Umwandlung der CSV-Datei in eine SEPA-XML-Überweisungs-Datei wird wohl auf lange Sicht nicht zu vereinfachen sein, da dies eine Implementierung eines SEPA-Buttons in die Rubrik "Rechnugnskorrekturen" erfordern würde.
Hier sehe ich wenig Chancen.

Ich hoffe, es ist etwas verständlicher geworden.
 
Ähnliche Themen
Titel Forum Antworten Datum
JTL Mahnwesen Workflow- Email nach 30 Tagen noch nicht bezahlt. JTL-Wawi 1.8 0
Neu Workflow der bei Stücklisten: Überverkäufe de-/aktivieren User helfen Usern - Fragen zu JTL-Wawi 11
Neu Workflow Aktion E-Mail senden kann nicht Plain und HTML Email zusammen versenden Arbeitsabläufe in JTL-Wawi 6
Workflow Manuell HTML Request wie Server Antwort verarbeiten JTL-Wawi 1.7 0
Workflow Marktplätze - Otto, Kaufland, etc. JTL-Wawi 1.6 0
Workflow Artikel + Anzahl in Einkaufsliste aktualisieren JTL-Wawi 1.8 0
Neu Workflow Web-Request Post für mollie Arbeitsabläufe in JTL-Wawi 5
Workflow MwSt.-Sätze ersetzen 0% -> 19% ändert netto in Positionen aber nicht in der Auftragssumme JTL-Wawi 1.7 2
Neu API Integration via Workflow Arbeitsabläufe in JTL-Wawi 8
In Diskussion Automatische Zuweisung der Kategorien für Artikel durch Workflow JTL-Workflows - Ideen, Lob und Kritik 3
In Bearbeitung Workflow offene Aufträge zusammenfassen bei ausgelieferten JTL-Workflows - Ideen, Lob und Kritik 1
Neu Workflow-Auswahl ... mit ins Kontext-Menü aufnehmen (rechten Maustaste) JTL-Wawi - Ideen, Lob und Kritik 2
Neu Benachrichtigung per Workflow bei Wareneingang User helfen Usern - Fragen zu JTL-Wawi 24
Workflow für Artikel versandklassen JTL-Wawi 1.7 1
Gelöst Per Workflow im Servicedesk eine Mail versenden. Gelöste Themen in diesem Bereich 4
Workflow für Versandart Wenn/Und JTL-Wawi 1.7 0
Workflow für Amazon Zahlart erstellen JTL-Wawi 1.7 0
In Diskussion Workflow von Stornobelege Rechnung JTL-Workflows - Ideen, Lob und Kritik 1
Workflow Auftraqspositionen per Email an Kunden senden JTL-Wawi 1.7 3
Gelöst Servicedesk Workflow Datei erstellen um einen Auftrag zu ändern Gelöste Themen in diesem Bereich 1
Neu Workflow mit Freipositionen in Email Gelöste Themen in diesem Bereich 3
Neu Workflow > Rechnungen > Label Setzen ? (1.8.11) User helfen Usern - Fragen zu JTL-Wawi 6
Neu Workflow Ereignis auslösen wenn alle Bedingungen erfüllt sind. Sonst anderes Ereignis auslösen. JTL-Wawi - Ideen, Lob und Kritik 0
Beantwortet Kunde von Firma per Workflow setzen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Workflow für Rechnung gesucht Arbeitsabläufe in JTL-Wawi 1
Workflow - Debitorennummer JTL-Wawi 1.8 2
In Diskussion Workflow - Artikelmerkmale setzen? JTL-Workflows - Ideen, Lob und Kritik 2
Workflow: Mahnungen - Fehler JTL-Wawi 1.8 5
Neu Workflow Lieferantenartikel-Nummer vor Artikelname setzen JTL-Wawi 1.7 1
In Diskussion Workflow wenn offene Rechnungen, dann weitere offene Aufträge sperren und im Kundensatz Sperrung setzten. JTL-Workflows - Ideen, Lob und Kritik 0
Workflow für Kaufland greift nicht mehr 1.8.11.0 kaufland.de - Anbindung (SCX) 5
[JTL-WAWI API] - Trigger Sales Order Workflow Event JTL-Wawi 1.8 3
Workflow-Bug: 1.8.11 Attribute in Workflow setzen JTL-Wawi 1.8 10
In Diskussion Workflow, Wert setzen aus Zwischenablage/Clipboard JTL-Workflows - Ideen, Lob und Kritik 0
Neu EK-Preise per Workflow in Lieferantenbestellung einfügen? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Workflow Rechnungsvorlage ändern klappt nicht - Wawi 1.7.13.1 User helfen Usern - Fragen zu JTL-Wawi 0
Neu per Workflow: WhatsApp oder ähnliches senden User helfen Usern - Fragen zu JTL-Wawi 0
Workflow Bug: Rechnungskorrektur erstellen aus Retoure JTL-Wawi 1.8 4
Gelöst In Workflow auf Stücklistenartikel zugreifen und dessen Eigenschaften anzeigen Gelöste Themen in diesem Bereich 7
Neu Manueller Workflow alle Artikel markieren funktioniert nicht JTL-Wawi - Fehler und Bugs 3
Englische Artikelbezeichnung in einem Workflow JTL-Wawi 1.7 0
In Diskussion Workflow für unbearbeitete Pickliste (versehentlich unbearbeitete in Auftrag verpacken verschieben) JTL-Workflows - Ideen, Lob und Kritik 2
Neu Suche Workflow Bedingung: "Wenn nicht storniert?" User helfen Usern - Fragen zu JTL-Wawi 2
Speichern von Retouren-Workflow schlägt fehl (JTL 1.6.39.0) JTL-Wawi 1.6 2
Neu Workflow: Vorname bei Auftragserstellung löschen Wawi 1.5 Gelöste Themen in diesem Bereich 3
Neu Vorschlag: Per Workflow Tickets erstellen Servicedesk (Beta) 1
Neu Workflow - Oberkategorie prüfen Eigene Übersichten in der JTL-Wawi 10
WAWI 1.8.12.0 stürzt ab, wenn die Verbindung zur Datenbank unterbrochen wurde JTL-Wawi 1.8 18
Neu Produktdaten aus Shop zur Wawi WooCommerce-Connector 9
Neu JTL-Installation- Verbindung zur Datenbank -SA Kennwort Installation von JTL-Wawi 22

Ähnliche Themen