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 ?
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 ?