Neu Fehlende Information in Positionstext nach update auf JTL Wawi 1.64

Gerd_Carl

Mitglied
25. Juli 2022
6
0
Hallo, letzten Freitag haben wir ein update gemacht von der Version 1.5 auf 1.64.
Seitdem wird im Auftragsdokument der Positionstext für die Versandart nicht mehr angezeigt.
Die Vorlage wurde nicht verändert. Interessanterweise ist der Text auf der späteren Rechnung wieder sichtbar.
Ich hatte das Wort Palettentransport auch in den Hinweis geschrieben, um zu sehen, ob der Hinweistext angezeigt wird. Funktioniert aber nicht.

Hier die fehlerhafte Anzeige im Auftrag:
Auftrag fehlender Positionsname.PNG

Und hier die wieder sichtbare Info in der Rechnung:
Rechnung Positionsname ist vorhanden.PNG

Hier das Script des Namensfeldes, das bis letzten Freitag einwandfrei funktioniert hat:

####Anfang:
SalesOrderPosition.Name
/* Artikelhinweis einblenden */
+ Cond(IsNullOrEmpty(SalesOrderPosition.Note)=False,"¶" + SalesOrderPosition.Note)
/* Wenn HAN einblenden gefüllt und...*/
+cond(IsNullOrEmpty(JTL_DirectQuery("select cHAN from tArtikel where cArtNr = '"+SalesOrderPosition.SKU+"'")) = False AND
/* ...wenn Haken bei eigenes Feld gesetzt */
JTL_DirectQuery("SELECT aasp.nWertInt FROM tArtikel a
LEFT JOIN tArtikelAttribut aa ON a.kArtikel = aa.kArtikel AND aa.kAttribut = 215
LEFT JOIN tArtikelAttributSprache aasp ON aa.kArtikelAttribut = aasp.kArtikelAttribut
WHERE a.cArtNr = '"+SalesOrderPosition.SKU+"'") == 1,
/* dann HAN ausgeben */
"¶Herst.-Art.Nr: " +JTL_DirectQuery("select cHAN from tArtikel where cArtNr = '"+SalesOrderPosition.SKU+"'"))
/* wenn Taric Code gefüllt dann einblenden - Für deutschsprachige Nutzung ausgeblendet zum wieder einblenden slash und stern entfernen */
/* + cond(IsNullOrEmpty(JTL_DirectQuery("SELECT cTaric FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'")) = False,"¶Taric-Code: " +JTL_DirectQuery("SELECT cTaric FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'"))
/* wenn Herstellerland gefüllt dann einblenden */
/* + cond(IsNullOrEmpty(JTL_DirectQuery("SELECT cHerkunftsland FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'")) = False,"¶Country of Origin: " +JTL_DirectQuery("SELECT cHerkunftsland FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'"))
/* wenn UN Nummer gefüllt dann einblenden */
+ cond(IsNullOrEmpty(JTL_DirectQuery("SELECT cUNNummer FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'")) = False,"¶UN-Nummer: " +JTL_DirectQuery("SELECT cUNNummer FROM tArtikel WHERE cArtNr = '"+SalesOrderPosition.SKU+"'"))
/* Angebotstext einblenden */
+"¶" + JTL_DirectQuery("SELECT aasp.cWertVarchar FROM tArtikel a LEFT JOIN tArtikelAttribut aa ON a.kArtikel = aa.kArtikel AND aa.kAttribut = 222 LEFT JOIN tArtikelAttributSprache aasp ON aa.kArtikelAttribut = aasp.kArtikelAttribut
WHERE cArtNr = '"+SalesOrderPosition.SKU +"'")

####ENDE

In dem Script ist kein Hinweis auf die Versandart zu finden. In der Rechnung ist im Prinzip der gleiche Aufbau zu finden mit dem Unterschied, das anstelle der Variable "SalesOrderPosition.Name" die Variable "InvoicePosition.Name" und der Bezug auf die Invoice.position genommen wird.

Ich gehe davon aus, dass es ein Bug sein muss, dass die Versandmethode in der Position nicht mehr dargestellt wird.

Gibt es einen sinnvollen Workaround oder ein schnelles Bugfix?
Hat dieses Problem schon jemand bemerkt?

Besten Gruß, Gerd

kleiner Nachtrag: ich habe gerade herausgefunden, dass dieser Fehler nur bei neu angelegten Aufträgen auftritt. Bei älteren Aufträgen, die vor dem letzten Freitag angelegt wurden, und nach dem update geändert wurden, tritt dieser Fehler nicht auf. Wir hatten gerade für einen bestehenden Auftrag ein paar Details geändert und dann die Auftragsbestätigung generiert und auf dieser AB ist der Eintrag Palettenlieferung zu sehen.
 
Zuletzt bearbeitet:

Gerd_Carl

Mitglied
25. Juli 2022
6
0
Noch ein Nachtrag: wir haben eben festgestellt dass auch die Freiposition in der Positionsdarstellung des Auftragsdokuments fehlt. Wieder wird die Menge und der Presi angezeigt, nur der Text nicht.
 

wortek

Offizieller Servicepartner
SPBanner
1. Juli 2016
1.486
302
Landsberg am Lech
Wo hast du das Script denn her? Ich würde den an deiner Stelle kontaktieren. Wenn man den Namen in der Positionsliste verändert bzw. zusätzliche Abfragen hineinschreibt ist ein typischer Effekt, dass dafür alle Positionen die keine Artikelpositionen sind (also zB Freipositionen oder Versandpositionen) ausgeblendet werden, weil das Script bei denen nicht greifen kann, und daher einen leeren Wert zurückgibt.

Du musst diese Abfrage daher vorher reinsetzen.

Hier mal als Beispiel mit Taric Code im Namen.

Version A: Versandposition wäre leer, weil sie ja keinen Taric-Code hat

Code:
"Taric Code: "+JTL_DirectQuery ("SELECT cTaric FROM dbo.tArtikel WHERE kArtikel ="+ str$(InvoicePosition.ProductInternalId))

Version B: "Item" wird zusätzlich abgefragt und Versandposition wird weiterhin angezeigt, da es ja kein "Item" ist
Code:
"Cond(InvoicePosition.PositionType = 'Item',InvoicePosition.Name + ""¶"" +""TARIC-code: "" + JTL_GetProductAttribute(""TARIC-code"",InvoicePosition.ProductInternalId) + JTL_DirectQuery(""

SELECT TOP(1) cTaric

FROM dbo.tArtikel

WHERE kArtikel = ""+str$(InvoicePosition.ProductInternalId)

),InvoicePosition.Name) "
 

Gerd_Carl

Mitglied
25. Juli 2022
6
0
Hi Wortek, vielen Dank für den Tipp, das hat schon weiter geholfen..
Wir haben nun beim Ausprobieren festgestellt, dass es nur mit der Auftragsvorlage Probleme gab. Der Fehler lag wohl darin, dass die Bedingung, den "Auftragstext" (eigenes Feld im Artikel) einzublenden in Kombination mit der Anzeige von Freiposition/Versandart in dieser Vorlage alleine nicht funktionierte. Nachdem das Einblenden des eigenen Feldes "Auftragstext" auskommentiert war, funktionierte die Anzeige der Freiposition/Versandart einwandfrei.
Wir wollten aber nicht auf die Anzeige des eigenen Feldes "Auftragstext" verzichten und haben die Bedingung eingebaut, das, wenn es eine Versandart oder Freiposition ist (also alles ohne Artikelnummer), das eigene Feld "Auftragstext" nicht anzuzeigen. (Hätte sicher auch mit Item funktioniert.)
Interessanterweise hatte die Darstellung der Versandposition kein Problem mit den Feldern Taric, HAN, Country of origin.. etc. wie von Dir beschrieben, sondern nur mit dem eigenen Feld, das es ja dabei nicht gibt.
Vielleicht hat das (Taric usw) JTL ja schon berücksichtigt?