9. März 2026 14:58
Hallo,
einer unserer Kunden kann für einen bestimmten Artikel die Lagerregulierung zu fakturierten Einstandspreisen nicht mehr aufrufen. Es kommt diese Fehlermeldung (s.Anhang).
Dass die Lagerregulierung in einer Endlosschleife hängt, ist auf den ersten Blick jetzt nicht zu erkennen.
Beim Debuggen fällt auf, dass immer wieder die Funktionen ForwardCostToOutbndEntries und ForwardCostToInbndEntries in der CU 5895 aufgerufen werden. Ich konnte allerdings nicht erkennen, ob sich Artikelposten wiederholen (bin mir auch nicht sicher, ob das problematisch ist). Es scheint so, als wenn wie wild Posten gegeneinander ausgeglichen werden und irgendwann der Stapel überläuft.
Mir fällt allerdings gerade keine Möglichkeit ein, wie ich den problematischen Posten bzw. die problematischen Posten eingrenzen könnte. Hat irgendjemand hier eine Idee?
@Edit:
Für den Artikel gibt es momentan 520 Ausgleichsposten. Ich habe leider keine Vorstellung, was da normal ist. Im Moment sieht es so aus, als wenn schlicht und ergreifend zu viele Posten vorhanden sind. Aber eigentlich sollte doch programmseitig verhindert werden, dass die Anzahl der Rekursionen ein bestimmtes Level übersteigt (beim Abbruch beträgt der Wert für LevelNo[3] 42).
- Code:
LOCAL ForwardAppliedCost(ItemLedgEntry : Record "Item Ledger Entry";Recursion : Boolean) AppliedQty : Decimal
WITH ItemLedgEntry DO BEGIN
// Avoid stack overflow, if too many recursions
IF Recursion THEN
LevelNo[3] := LevelNo[3] + 1
ELSE
LevelNo[3] := 0;
IF LevelNo[3] = MaxLevels THEN BEGIN
SetAppliedEntryToAdjust(TRUE);
LevelExceeded := TRUE;
LevelNo[3] := 0;
EXIT;
END;
@Edit
Mir ist da jetzt noch eine Sache aufgefallen; Die Lagerregulierung bleibt bei einem bestimmten Artikelposten hängen. Der wiederum gehört zu einer gebuchten Gutschrift in der ein- und derselbe Artikel 84 Mal eingetragen wurde. Mal davon abgesehen, dass sich mir der Sinn dahinter nicht erschließt, könnte das das Problem verursachen und v.a., welche Möglichkeit hätte man, es zu beheben? Gesetzt der Fall, man würde die Gutschrift stornieren, würden vmtl. noch mehr Posten erzeugt werden, über die die Lagerregulierung läuft.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von FragenFrager am 11. März 2026 16:38, insgesamt 3-mal geändert.