In Diskussion Keine Auslieferung nach Zahlungsartänderung über Workflow

TotalerNeuling

Aktives Mitglied
27. Mai 2023
82
9
Guten Abend User, evtl. kann mir jemand helfen.

Ziel: Kommt ein Auftrag über den Online- Shop rein, soll die Zahlungsart auf den in Kundenstamm geändert werden.

Unsere Online-Bestellungen kommen mit dem Präfix # in Wawi rein. Daher Triggere ich danach.
Anschließend ändere ich den Wert mithilfe der manuell erstellten Prozedur lt. Anweisung

Der Wert wird wie folgt aus dem Kundenstamm ausgelesen:
SQL:
{% capture query -%}
SELECT za.cName FROM dbo.tZahlungsart za JOIN dbo.tkunde tk ON za.kZahlungsart = tk.kZahlungsart
WHERE kKunde = {{ Vorgang.Stammdaten.Kunde.InterneKundennummer }}
{% endcapture -%}
{% assign result = query | DirectQueryScalar -%}
{{ result }}

Wird die Zahlungsart so geändert, kann der Auftrag nicht mehr ausgeliefert werden.

Bei Versuch über Workflow auszuliefern erscheint die Fehlermeldung:
Es sind keine Datensätze in der 'SqlDataRecord'-Enumeration vorhanden. Verwenden Sie zum Senden eines table-valued parameters ohne Zeilen stattdessen einen null-Verweis für den Wert.

Für eine manuelle Auslieferung bleibt das Auslieferungs-Button grau.

Erst beim Öffnen und Speichern des Auftrags kann der Auftrag manuell ausgeliefert werden.

Hat jemand eine Idee, was hier falsch läuft.
 

frankell

Sehr aktives Mitglied
9. September 2019
2.676
840
Flensburg
Guten Abend User, evtl. kann mir jemand helfen.

Ziel: Kommt ein Auftrag über den Online- Shop rein, soll die Zahlungsart auf den in Kundenstamm geändert werden.

Unsere Online-Bestellungen kommen mit dem Präfix # in Wawi rein. Daher Triggere ich danach.
Anschließend ändere ich den Wert mithilfe der manuell erstellten Prozedur lt. Anweisung

Der Wert wird wie folgt aus dem Kundenstamm ausgelesen:
SQL:
{% capture query -%}
SELECT za.cName FROM dbo.tZahlungsart za JOIN dbo.tkunde tk ON za.kZahlungsart = tk.kZahlungsart
WHERE kKunde = {{ Vorgang.Stammdaten.Kunde.InterneKundennummer }}
{% endcapture -%}
{% assign result = query | DirectQueryScalar -%}
{{ result }}

Wird die Zahlungsart so geändert, kann der Auftrag nicht mehr ausgeliefert werden.

Bei Versuch über Workflow auszuliefern erscheint die Fehlermeldung:
Es sind keine Datensätze in der 'SqlDataRecord'-Enumeration vorhanden. Verwenden Sie zum Senden eines table-valued parameters ohne Zeilen stattdessen einen null-Verweis für den Wert.

Für eine manuelle Auslieferung bleibt das Auslieferungs-Button grau.

Erst beim Öffnen und Speichern des Auftrags kann der Auftrag manuell ausgeliefert werden.

Hat jemand eine Idee, was hier falsch läuft.
Hallo @TotalerNeuling,
kannst Du Deinen CustomWorkflow einmal zeigen? Mich verwirrt zudem etwas, dass Du DotLiquid-Code (um die Query herum) präsentierst, den Du so ja nicht im CustomWorkflow verwendest.
 

TotalerNeuling

Aktives Mitglied
27. Mai 2023
82
9
Hallo frankell,

Danke für Dein Interesse.

Den Code habe ich auf der Seite https://support.t4dt.com/hc/de/articles/12467303147922-Zahlungsart-dynamisch-setzen-ab-JTL-Wawi-1-6 gefunden und lautet wie folgt:
SQL:
--Copyright (c) 2022 T4DT GmbH
--Jedem, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, wird hiermit kostenlos die Erlaubnis erteilt, ohne Einschränkung mit der Software zu handeln, einschließlich und ohne Einschränkung der Rechte zur Nutzung, zum Kopieren, Ändern, Zusammenführen, Veröffentlichen, Verteilen, Unterlizenzieren und/oder Verkaufen von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten:
--Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

CREATE TYPE CustomWorkflows.Parameter_spZahlungsartAendern_ZahlungsartName FROM NVarchar(255);
GO
EXEC CustomWorkflows._SetActionParameterDisplayName 'Parameter_spZahlungsartAendern_ZahlungsartName', 'Zahlungsart'
GO

IF EXISTS(SELECT 1 FROM sys.procedures WHERE Name = 'spZahlungsartAendern')
DROP PROCEDURE CustomWorkflows.spZahlungsartAendern
GO
CREATE PROCEDURE CustomWorkflows.spZahlungsartAendern @kAuftrag INT, @cZahlungsart Parameter_spZahlungsartAendern_ZahlungsartName AS
BEGIN
--Copyright (c) 2022 T4DT GmbH
--Jedem, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, wird hiermit kostenlos die Erlaubnis erteilt, ohne Einschränkung mit der Software zu handeln, einschließlich und ohne Einschränkung der Rechte zur Nutzung, zum Kopieren, Ändern, Zusammenführen, Veröffentlichen, Verteilen, Unterlizenzieren und/oder Verkaufen von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten:
--Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.
    DECLARE @kZahlungsart INT = (SELECT TOP 1 kZahlungsart FROM dbo.tZahlungsart WHERE cName = @cZahlungsart)
    UPDATE tb SET kZahlungsart = @kZahlungsart FROM  Verkauf.tAuftrag tb
    WHERE  tb.kAuftrag = @kAuftrag
END
GO
EXEC CustomWorkflows._CheckAction 'spZahlungsartAendern'
GO
EXEC CustomWorkflows._SetActionDisplayName 'spZahlungsartAendern', 'Zahlungsart ändern'
GO

Ich konnte mir noch vorstellen, im Auftrag zusatzlich noch zusätzlich die ZahlungsartID zu ändern, damit beides zu einander passt. (Wird bereits geändert)

Bin zuhause und werde versuchen mich mit clouddesktop zu verbinden um das zu testen, ansonsten komm ich leider erst am Montag wieder dazu.

VG
 
Zuletzt bearbeitet:

frankell

Sehr aktives Mitglied
9. September 2019
2.676
840
Flensburg
Hallo frankell,

Danke für Dein Interesse.

Den Code habe ich auf der Seite https://support.t4dt.com/hc/de/articles/12467303147922-Zahlungsart-dynamisch-setzen-ab-JTL-Wawi-1-6 gefunden und lautet wie folgt:
SQL:
--Copyright (c) 2022 T4DT GmbH
--Jedem, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, wird hiermit kostenlos die Erlaubnis erteilt, ohne Einschränkung mit der Software zu handeln, einschließlich und ohne Einschränkung der Rechte zur Nutzung, zum Kopieren, Ändern, Zusammenführen, Veröffentlichen, Verteilen, Unterlizenzieren und/oder Verkaufen von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten:
--Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

CREATE TYPE CustomWorkflows.Parameter_spZahlungsartAendern_ZahlungsartName FROM NVarchar(255);
GO
EXEC CustomWorkflows._SetActionParameterDisplayName 'Parameter_spZahlungsartAendern_ZahlungsartName', 'Zahlungsart'
GO

IF EXISTS(SELECT 1 FROM sys.procedures WHERE Name = 'spZahlungsartAendern')
DROP PROCEDURE CustomWorkflows.spZahlungsartAendern
GO
CREATE PROCEDURE CustomWorkflows.spZahlungsartAendern @kAuftrag INT, @cZahlungsart Parameter_spZahlungsartAendern_ZahlungsartName AS
BEGIN
--Copyright (c) 2022 T4DT GmbH
--Jedem, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, wird hiermit kostenlos die Erlaubnis erteilt, ohne Einschränkung mit der Software zu handeln, einschließlich und ohne Einschränkung der Rechte zur Nutzung, zum Kopieren, Ändern, Zusammenführen, Veröffentlichen, Verteilen, Unterlizenzieren und/oder Verkaufen von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten:
--Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.
    DECLARE @kZahlungsart INT = (SELECT TOP 1 kZahlungsart FROM dbo.tZahlungsart WHERE cName = @cZahlungsart)
    UPDATE tb SET kZahlungsart = @kZahlungsart FROM  Verkauf.tAuftrag tb
    WHERE  tb.kAuftrag = @kAuftrag
END
GO
EXEC CustomWorkflows._CheckAction 'spZahlungsartAendern'
GO
EXEC CustomWorkflows._SetActionDisplayName 'spZahlungsartAendern', 'Zahlungsart ändern'
GO

Ich konnte mir noch vorstellen, im Auftrag zusatzlich noch zusätzlich die ZahlungsartID zu ändern, damit beides zu einander passt. (Wird bereits geändert)

Bin zuhause und werde versuchen mich mit clouddesktop zu verbinden um das zu testen, ansonsten komm ich leider erst am Montag wieder dazu.

VG
Ah, ok, jetzt ergibt alles Sinn. :D

Allerdings sollte Dein erster Ansprechpartner dann auch lieber T4DT sein. Unten auf der verlinkten Seite besteht ja auch die Möglichkeit, Fragen einzureichen.

Am naheliegendsten ist, dass etwas in der Wawi zusätzlich angestoßen wird bei der Änderung der Zahlungsart, was bei einer direkten Bearbeitung in der Datenbank eben nicht angestoßen wird, bspw. irgendeine Form von Validierung. Oder auch, dass die gewünschte Änderung noch eine weitere Änderung in einer anderen Tabelle notwendig macht, was aber nur durch das "Speichern" in der Wawi ausgelöst wird und nicht bei Direktzugriffen. Das sind wohl die wahrscheinlichsten Gründe. Caching würde ich jetzt mal ausschließen, das ist eher im Shop ein Thema.

Aber um den genauen Grund zu eruieren, muss man sich bspw. vorhandene Triggers und SPs in der Datenbank ganz genau anschauen, um ggf. den Code entsprechend zu erweitern. Aber auch dann kann es immer noch sein, dass halt innerhalb der Wawi etwas passiert, was leider eine Blackbox ist, weil nicht Open Source. Da müsste man schon einen Mitschnitt machen (bspw. über JTL-Diag), um genaue Aussagen treffen zu können. Das kann ein ziemlicher Aufwand werden.
 
  • Gefällt mir
Reaktionen: T4DT.GmbH
Ähnliche Themen
Titel Forum Antworten Datum
Neu Shop zeigt keine Artikel mehr Fehler 500 Betrieb / Pflege von JTL-Shop 9
Neu keine Daten seit DHL Versenden 4.0 JTL-Track&Trace - Fehler und Bugs 4
Neu Keine Verbindung zu Siwssbit TSE möglich JTL-POS - Fehler und Bugs 0
Neu Keine Warenpost Int. Labels hsCode - Fehler? JTL-ShippingLabels - Fehler und Bugs 8
Neu Umstellung auf Jera Datev Schnittstelle - keine Kundennummer im Kundencenter Schnittstellen Import / Export 2
Neu Keine Labels für Warenpost international über Packtisch JTL-ShippingLabels - Fehler und Bugs 8
OnPremise API: Keine Daten aus API-Anbindung mittels externer APP JTL-Wawi 1.11 19
Eigener Drittshop-Connector (jtl/connector 5.3): valide Variationskombinationen werden mit „besitzt keine Variationen" nicht gesendet JTL-Wawi 1.11 1
Nach Wawi Update keine Fehlermeldung mehr sichtbar kaufland.de - Anbindung (SCX) 2
Nach Update auf 2.0.3 Keine Fehlermeldungen mehr sichtbar Otto.de - Anbindung (SCX) 1
Neu eBay-Abgleich Fehlermeldung: Datenverarbeitung fehlgeschlagen: Die Sequenz enthält keine Elemente eBay-Anbindung - Fehler und Bugs 8
Neu Es werden keine Marken ausgedruckt und die Portokasse lässt keine Anmeldung zu. Smalltalk 5
Neu DHL-4.0 keine Labels JTL-ShippingLabels - Fehler und Bugs 12
Einrichtung ZUGFeRD, es lassen sich keine Rechnungen "Speichern" JTL-Wawi 1.11 2
WAWI 2.0.0 erkennt keine Updates JTL-Wawi 2.0 1
Keine Datenübertragung trotz bestehender Verbindung und funktionierendem Server JTL-Wawi 2.0 35
Mindestabnahme Lieferant - keine Kommazahlen erlaubt - Wie gehts? JTL-Wawi 1.11 0
Keine Rückmeldung in JTL Wawi sobald SQL Server Memory durch Database Cache ausgeslastet ist JTL-Wawi 2.0 9
Neu Nach Update auf JTL-Wawi 2.0.3 keine WMS-Lager mehr auswählbar – Versand komplett blockiert JTL-Wawi 2.0 3
Neu Keine Adressvalidierung bei DHL Versenden 4.0? JTL-ShippingLabels - Ideen, Lob und Kritik 5
Neu keine Kontakt Absender/Empfänger bei DHL Versenden 4.0 JTL-ShippingLabels - Ideen, Lob und Kritik 4
Neu Klarna konnte mit den angegebenen Daten keine Sitzung erstellen. Einige Feldbedingungen wurden verletzt. Betrieb / Pflege von JTL-Shop 0
AboutYou keine Felder für GPSR Daten SCX-(Ninepoint)-Anbindungen 0
Neu Angeblich noch keine Verknüpfung mit DPD Meta ??? JTL-ShippingLabels - Fehler und Bugs 1
Neu JTL Pos liest keine Verkäufe mehr ein nach Update Einrichtung / Updates von JTL-POS 0
Neu Zahlung zugewiesen, aber keine Rechnung wird angezeigt User helfen Usern - Fragen zu JTL-Wawi 2
Worker läuft, zieht aber keine Aufträge in die Wawi JTL-Wawi 2.0 1
Neu Angebot Status "Fehlerhaft" aber keine Fehlermeldung Amazon-Lister - Fehler und Bugs 5
Neu keine DHL Shipping Labels JTL-ShippingLabels - Fehler und Bugs 2
Keine Mailvorlagen JTL-Wawi 1.11 5
Worker versendet keine E-Mails mehr aus der Workflow Queue JTL-Wawi 2.0 6
Neu Abrechnung / Auslieferung von Aufträgen mit Gutschriftverfahren Arbeitsabläufe in JTL-Wawi 3
Neu Versandart nach Volumengewicht und Lieferland Allgemeine Fragen zu JTL-Shop 2
Neu Consentmanager item youtube deaktiviert sich nach ShopUpdate Allgemeine Fragen zu JTL-Shop 0
Neu SUNMI V3 MIX – Touchscreen und USB-Maus frieren nach einigen Minuten ein JTL-POS - Fehler und Bugs 1
Neu 500er Fehler im Shop nach aktivierung des Nova Child Templates für JTL-Shop 3
Kundengruppenrabatte werden bei einzelnen Artikeln nicht übernommen – „Rabatte ignorieren“ springt nach Speichern zurück JTL-Wawi 2.0 2
nach Update von 5.3 auf 5.7 neue Position im Warenkorb "Gebühr" die auch in den Auftrag übernommen werden Einrichtung JTL-Shop5 2
Neu Wie übertragt ihr Kurzbeschreibungen nach Shopify? Shopify-Connector 3
Beantwortet Shop Abgleich nach Update auf 5.7.2 nicht mehr möglich JTL-Shop - Fehler und Bugs 4
Login Wawi nicht möglich nach Update auf 1.11.11 JTL-Wawi 1.11 1
Neu Nach Wawi Update Probleme mit Rechnungsdrucker JTL-POS - Fehler und Bugs 4
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
JTL APP - Fehlermeldung nach Update auf Wawi 1.11. JTL-Wawi App 6
Neu Update nach 5.7.1 hängt bei Mirgation Installation / Updates von JTL-Shop 4
JTL nach Update auf 2.0.3 im Bereich „Kunden“ extrem langsam JTL-Wawi 2.0 1
JTL-Wawi sucht falschen ShopType nach Gambio-Update JTL-Wawi 1.7 2
Nach update 1.8>1.11 Kein Mandant in JTL-Wawi gefunden JTL-Wawi 1.11 5
Neu Betrag auf der Rechnung nach Rechnungskorrektur User helfen Usern - Fragen zu JTL-Wawi 1
Fehler nach Update auf Version 1.11.11 und 2.0.4 JTL-Wawi 2.0 7

Ähnliche Themen