Neu Anzeige von mehreren Chargennummern für den selben Artikel auf dem Lieferschein

lando

Aktives Mitglied
8. Februar 2023
20
2
Hallo,
eine Bestellposition von 1600 kg wurde vom Lieferanten in 2 Chargen geliefert, 1100 kg Charge A und 500 kg Charge B.
Im Versand ist das auch so abgebildet :

Artikel Menge Charge
Artikel A 1100 kg
Artikel A 1100 kg Charge Y
Artikel B 1600 kg
Artikel B 1100 kg Charge A
Artikel B 500 kg Charge B

Leider wird auf dem Lieferschein für Artikel B nur die Gesamtmenge 1600 kg ausgegeben und dafür auch nur die Charge B angezeigt.

Das Dokument "Lieferschein" basiert auf "Lieferscheinpositionen" [Vorgang.Positionen]

Für die Ausgabe der Menge der Lieferscheinposition verwende ich
COND(not IsNullOrEmpty(Lieferscheinpositionen.Artikelnummer) or not IsNullOrEmpty(Lieferscheinpositionen.Artikel.Artikelnummer), LocNumber$(Lieferscheinpositionen.Menge, JTL_GetCulture("MT","eng","978"), @DecimalQuantity), "")

Für die Ausgabe von Charge und MHD :

Cond(Lieferscheinpositionen.Artikel.IstChargenArtikel = true and Lieferscheinpositionen.Auftragsposition.Positionstyp = 1,Cond(len(str$(Lieferscheinpositionen.InterneLieferscheinPositionnummer)) > 0 ,
Cond(
len(JTL_DirectQuery ("select lpd.cCharge FROM Auslieferung.vLieferscheinPosDetail lpd where lpd.kLieferscheinPos = "+str$(Lieferscheinpositionen.InterneLieferscheinPositionnummer) )) > 0,
"¶Lot No : " +JTL_DirectQuery ("select lpd.cCharge FROM Auslieferung.vLieferscheinPosDetail lpd where lpd.kLieferscheinPos = "+str$(Lieferscheinpositionen.InterneLieferscheinPositionnummer) ),
"") +
Cond(
len(JTL_DirectQuery ("select lpd.dMHD FROM Auslieferung.vLieferscheinPosDetail lpd where lpd.kLieferscheinPos = "+str$(Lieferscheinpositionen.InterneLieferscheinPositionnummer) )) > 0,
", Best before : " + JTL_DatumAlsText(Date( JTL_DirectQuery ("select lpd.dMHD FROM Auslieferung.vLieferscheinPosDetail lpd where lpd.kLieferscheinPos = "+str$(Lieferscheinpositionen.InterneLieferscheinPositionnummer) ) )),
"")
, "")
,"")

Im Prinzip liefert die View vLieferscheinPosDetail ja alles, was ich brauche. Dort sind die Teilmengen mit den Chargennummern hinterlegt.
Anscheinend greift Lieferscheinpositionen aber auf vLieferscheinPos zu.
Anstatt wie bisher nur Charge und MHD auszugeben könnte ich zukünftig ja Menge, Charge und MHD ausgeben. Das scheitert aber leider daran, daß ich nicht weiß, wie ich zu jeder Lieferscheinposition einen Loop durchlaufen kann, um alle dazugehörenden Positionen aus vLieferscheinPosDetail untereinander auszudrucken.

Hat jemand eine Idee dazu ?
 

lando

Aktives Mitglied
8. Februar 2023
20
2
Update : das obige Select gibt schon beide Detailpositionen zurück. Die Ausgabelogik gibt aber entweder nur eines davon aus oder druckt das 2. über das 1.
 

zaxxo

Offizieller Service Partner
SPBanner
29. November 2022
151
82
Michelstadt
Firma
Zaxxo UG (haftungsbeschränkt)
Die Funktion JTL_DirectQuery kann nur einen Wert (die erste Spalte der ersten Zeile) ausgeben. Versuchs mal mit:
Code:
JTL_DirectTableQuery([SQL],"¶","¶")
Damit sollten die Chargen und MHDs untereinander ausgegeben werden.
 
  • Gefällt mir
Reaktionen: lando

Ähnliche Themen