Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 14:46

Hallo zusammen,

ich bekomme seit einiger Zeit in einem Job in Navision eine Meldung "Arithmetic operation resulted in an overflow."

Daher versuchte ich diesem auf den Grund zu gehen. Mittlerweile habe ich herausgefunden das es wahrscheinlich an zu vielen Einträgen
in der Tabelle 83 - "Item Journal Line" liegt. Für den Datentyp Integer in Navision darf ich maximal 2.147.483.647 Einträge zulassen.

In dieser Tabelle sind aber Einträge von -2.147.483.647 bis 2.147.483.647 vorhanden, so dass Navision mir dort keine neuen Einträge erlaubt.

Wofür steht diese Tabelle genau? Müssen da Werte bzw. Einträge drinstehen oder werden die normalerweise nach einer gewissen Zeit gelöscht
bzw. kann man diese ohne weiteres löschen?

Einen ähnlichen Fehler habe ich hier gefunden und vermute das es das gleiche Problem sein könnte:

https://www.navug.com/communities/commu ... gestviewer

Besten Dank für eure Info!

Gruß

NavBeginner

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 15:29

In einem Buch.-Blatt stehen Millionen Einträge?! Woher kommen die denn? Ein Buch.-Blatt enthält ungebuchte Zeilen. Beim Buchen werden die gelöscht.

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 15:40

Ich vermute die bleiben dort drin, wenn die Buchung nicht erfolgreich verläuft.

Wir buchen unsere Aufträge an einer separaten Station über eine Webanwendung.
Falls dort ein Fehler auftritt wird der Auftrag in Navision direkt gebucht von Hand.
Ich denke das sich so alle möglichen Zeilen ansammeln und jetzt voll sind.

Daher die Frage: kann ich die Zeilen aus dem "Item Journal Line" löschen?
Oder hat das Auswirkungen auf die ganze Buchungssystematik?

Danke

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 15:41

Das sind Buchungsblätter, die Zeilen sollte man verbuchen, wenn man sie gefüllt hat. Das wurde offenbar versäumt.
Die Zeilennummer hat ja normalerweise 10000er-Schritte, das geht also schneller als man denkt.
Wenn das Buchblatt durch eine Stapelverarbeitung gefüllt wird, kann man das ggf. auf 1er-Schritte reduzieren. Außer der sonst möglichen Option, Zeilen auch nachträglich zwischen bestehende einzufügen, hat man dadurch keine Nachteile und der nächste Überlauf rückt in weite Ferne.
Löschen kann man die Inhalte immer, sollte vorher aber alle User informieren, damit diese ihre eventuell vorhandenen aktuellen Eingaben noch verbuchen können.
Da sich die Inhalte i.d.R. über diverse Buchblattnamen bzw. -Vorlagen verteilen, geht das am einfachsten über den Objekt Designer.

In dieser Tabelle sind aber Einträge von -2.147.483.647 bis 2.147.483.647 vorhanden

Negative Zeilennummern gibt es Standard da allerdings bei manuellen Eingaben nicht, das ist nur programmtechnisch machbar.

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 16:05

Danke @kowa

kannst du mir sagen wie ich den Zeilenschritt auf 1 anstatt auf 10000 bringe?

Danke

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 16:16

NavBeginner hat geschrieben:kannst du mir sagen wie ich den Zeilenschritt auf 1 anstatt auf 10000 bringe?


wenn dein Buchblatt über einen Stapellauf gefüllt wird, dann ist dieser programmiert und in die Programmierung solltest du reingehen und nach sowas wie LineNo suchen....oder nach 10000 ....dann ersetzt du die 10000 durch eine 1 :)

Das löst aber das Grundproblem nicht -> eure Zeilen müssten mal weggebucht oder entspr. gelöscht werden

Re: Tabelle 83 - "Item Journal Line" - Einträge löschen?

25. Juli 2019 16:25

Das geht nur im Programmcode der Stapelverarbeitung, dort wo die Zeilen erzeugt werden.
Üblicherweise wird die aktuell letzte über FINDLAST im fraglichen Buchblatt ermittelt, und dann 10000 für die nächste draufgeschlagen.
Statt sinngemäß
Code:
NextLineNo := ItemJnlline. "Line No." + 10000;

schreibt man dann:
Code:
NextLineNo := ItemJnlline. "Line No." + 1;


Bei manuellen Eingaben in der Form sind es immer 10000er-Schritte, das ist nicht konfigurierbar.