Positionsnummer auf Page

20. September 2022 10:39

Moin Moin liebe Navision Profis :)

ich scheitere gerade an einer für euch wahrscheinlich sehr einfachen Umsetzung.
Auf den Angeboten haben wir die Positionsnummern angedruckt. Diese wollen wir nun auch in der Sales Line darstellen,
Im Report zählen wir alles wo "Art" Sachkonto, Artikel, Ressource... ist, also wie folgt:
Code:
IF DocumentLine.Type > 0 THEN
  PosNo += 1;


Daraufhin habe ich in der Tabelle 37 ein neues Feld angelegt und folgendes eingetragen. Es tut sich aber rein gar nichts...

Code:
Position No. - OnValidate()
"Position No." := 0;
IF Type > 0 THEN
"Position No." += 1;


Kann jemand helfen?
Danke!

Re: Positionsnummer auf Page

20. September 2022 11:05

Hallo,

leider kann dir wahrscheinlich niemand helfen.

Weil spätestens, wenn jemand Zeilen mittendrin einfügt oder löschst, musst du die folgenden Zeilen renummerieren, sprich alle folgenden Zeilen ändern. Spätestens wenn du den Beleg löschen willst, bremst dich System aus, weil es bei jeder gelöschten Zeile die folgenden renummerieren will, da es den Unterschied zwischen Zeile löschen und Beleglöschen nicht kennt.

Das einzige was du tun kannst, ist die Belegzeilen vor dem Drucken/Freigeben mit Positionsummern zu versehen. Alles andere bremst dich aus oder läuft nicht stabil.

Gruß Fiddi

Re: Positionsnummer auf Page

20. September 2022 11:50

Okay, dann erstmal vielen Dank für deine Rückmeldung und werde ich so weiter geben. Aber nur aus reinem Interesse... was müsste ich am Code ändern, damit richtig hochgezählt wird?

Re: Positionsnummer auf Page

20. September 2022 12:30

was müsste ich am Code ändern, damit richtig hochgezählt wird?

Das ist ein wenig komplexer.

Der OnValidate- Trigger eine Feldes wird nur aufgerufen, wenn du dort auch etwas eingibst. Das willst du ja nicht.

Du musst die Nummer im OnInsert-Trigger der Tabelle vergeben. Dazu musst du dort aber zunächst herausfinden, welche Nummer in der Zeile davor verwendet wurde, um diese dann um eins zu erhöhen.
Die Zeile in der du gerade bist, weiß das nicht.
Wenn du jetzt eine Zeile einfügst oder löschst, musst du, wie schon gesagt, auch alle nachfolgenden Zeilen des Belegs mit neuen Nummern versehen, was für eine Unmenge an Aufrufen sorgt, insbesondere dann, wenn du die Eventsubskriper der CRM- und Graph- Integration nicht deaktiviert hast.

Gruß Fiddi

Re: Positionsnummer auf Page

20. September 2022 14:35

Ich würde es über eine function lösen die z. B. beim Freigeben des Belegs ausgeführt wird und für alle Zeilen die Positionsnummer neu berechnet. Dann sind auch zwischendrin neu eingefügte Zeilen berücksichtigt. Wobei aber ohnehin zu klären wäre wie damit umgegangen werden soll wenn die Pos. 3 aus Version 1 des Belegs in Version 2 dann zu Pos. 4 wird.

Re: Positionsnummer auf Page

21. September 2022 09:09

Klingt doch eigentlich ganz gut, die Positionen sollten immer mit dem gedruckten Beleg übereinstimmen, aber das werde ich an unseren NAV Partner übergeben. :-D
Vielen Dank für das Feedback!

Re: Positionsnummer auf Page

21. September 2022 10:52

1257264937 hat geschrieben:Klingt doch eigentlich ganz gut, die Positionen sollten immer mit dem gedruckten Beleg übereinstimmen, aber das werde ich an unseren NAV Partner übergeben. :-D
Vielen Dank für das Feedback!


^^ na der wird sich freuen.
eine andere Idee: warum gebt ihr die Positionsnummer nicht einfach manuell ein *druckundweg*

Re: Positionsnummer auf Page

21. September 2022 11:02

Hallo,

warum gebt ihr die Positionsnummer nicht einfach manuell ein *druckundweg*


Ganz einfach: weil es nicht automatisch passiert :roll: :wink:

Wir hatten eine ähnliche manuelle Funktion zum renummerieren der Positionsnummern in unserer Lösung, Glaubst du die wurde auch nur in 10% der Fälle aufgerufen? Nein natürlich nicht.

Gruß fiddi

Re: Positionsnummer auf Page

21. September 2022 11:25

Ganz genau! alles was händisch eingegeben werden muss wird vergessen und der Anwender muss in NAV ja "sowieso schon so viel klicken" :roll:

Re: Positionsnummer auf Page

21. September 2022 12:07

Hallo,

und der Anwender muss in NAV ja "sowieso schon so viel klicken"


Wieso "muss" der Anwender wann viel klicken?

Gruß Fiddi

Re: Positionsnummer auf Page

22. September 2022 10:51

fiddi hat geschrieben:Wir hatten eine ähnliche manuelle Funktion zum renummerieren der Positionsnummern in unserer Lösung, Glaubst du die wurde auch nur in 10% der Fälle aufgerufen? Nein natürlich nicht.
Gruß fiddi

Genau deshalb haben ist es in unserer Lösung so flexibel umgesetzt, dass der Kunde per Einrichtung es steuern kann, ob bei der Belegfreigabe:
- der Anwendung es egal ist, ob im Beleg die Positionsnummern vergeben wurden oder nicht
- oder die Anwendung es prüfen soll, ob im Beleg die Positionsnummern vergeben wurden und wenn nicht (die Positionsnummern nicht vergeben) ==> Fehler, um den Anwender zu Numerierung zu zwingen
- oder die Anwendung die Positionsnummern autom. vergibt

Re: Positionsnummer auf Page

22. September 2022 11:13

Hallo,

das hätten wir auch machen können. Das Problem war nur, das die Positionsnummern hierarchisch sein sollten also z.B. "1.1.1". Da hast du mit der Automatik ein wenig Probleme das bei der Freigabe zu machen. Wäre in Grenzen aber auch möglich gewesen.

Gruß Fiddi

Re: Positionsnummer auf Page

22. September 2022 11:44

Die Hierarchie macht unsere Lösung auch wenn der Anwendert im Beleg die Von-Bis-Summen verwendet, die Belegzeilen sehen dann folgt aus:

der erste Vom-Bis-Summen Block:
1. Von Zwischensumme
1.1 Artikelzeile
1.2 nächste Artikelzeile
Ende Zwischens./Bundle Block

nächster Von-Bis-Summen Block:
2. Von Zwischensumme
2.1 Artikelzeile
2.2 nächste Artikelzeile

Re: Positionsnummer auf Page

22. September 2022 11:55

Nur das es bei uns nicht um Von-Bis-Summen ging.

Gruß Fiddi