Neu List&Label "malicious"-Fehlermeldung bei JTL_DirectQuery, was ist daran falsch?

fibergirl

Sehr aktives Mitglied
14. April 2016
745
204
Hamburg
Hallo,

das Thema Gewichte auf der Rechnung (und Angebot, Auftrag ... ) wurde bereits verschiedentlich angesprochen.

Für die einzelnen Positionen hatte ja schon mal @olibaba eine vorläufige Lösung erarbeitet:
https://forum.jtl-software.de/threa...angebot-rechnung-etc-hilfe.126712/post-700735

Aber ich brauche auch das Gesamtgewicht auf der Rechnung.

Es war mir nicht gelungen, aus den Benutzervariablen eine Gesamtsumme zu errrechnen, vermutlich weil ich diese außerhalb der Positionstabelle brauche, und da die Benutzervariablen ins Leere greifen.

Also SQL.

In meinem SQL-Manager sieht diese Formel gut aus und gibt das korrekte Ergebnis:
Code:
SELECT SUM(dbo.tArtikel.fArtGewicht * Rechnung.tRechnungPosition.fAnzahl) AS Result
FROM Rechnung.tRechnungPosition
LEFT JOIN dbo.tArtikel
ON dbo.tArtikel.kArtikel = Rechnung.tRechnungPosition.kArtikel
WHERE Rechnung.tRechnungPosition.kRechnung = 8

Mit JT_DirectQuery jedoch, im Editor für die Benutzervariable:
Code:
JTL_DirectQuery("SELECT SUM(dbo.tArtikel.fArtGewicht * Rechnung.tRechnungPosition.fAnzahl) AS Result
FROM Rechnung.tRechnungPosition
LEFT JOIN dbo.tArtikel
ON dbo.tArtikel.kArtikel = Rechnung.tRechnungPosition.kArtikel
WHERE Rechnung.tRechnungPosition.kRechnung = '"+str$(Report.InternalId)+"'")

Bekomme ich: Blocked possible malicious sql command.

Im Report angewandt, bekomme ich null. Klar, der Query wird ja blockiert.

Aber was mache ich falsch?
Ist der SQL-Query wirklich zu kompliziert?
Hat er Fehler? Was könnte daran "malicious" sein?

Oder geht es überhaupt ganz anders einfacher?

Dank & Gruß,
fibergirl
 

fibergirl

Sehr aktives Mitglied
14. April 2016
745
204
Hamburg
Ja, es geht wirklich einfacher :) .

Einfach zur Darstellung außerhalb der Positionstabelle nicht sum(@TotalWeight) verwenden, sondern dafür jeweils noch eine weitere Benutzervariable erfinden:
(auf Basis der oben verlinkten Lösung von von @olibaba :
@AllTotalWeight
sum(@TotalWeight)

@AllTotalShippingWeight
sum(@TotalShippingWeight)

und die dann unten beim Gesamtgewicht einsetzen!
z.B. so:
LocNumber$(@AllTotalWeight,"",3) + " kg"

Danke fürs Zuhören ...

Die Frage nach dem "Blocked possible malicious sql command." bleibt natürlich!