Alphanumerische Nummernserie in NAV 4.0

6. Oktober 2009 09:56

Guten Morgen liebe "msdynamics-Gemeinde"!

bereits seit längerer Zeit bin ich ein regelmäßiger, wenn auch passiver, Besucher dieser Seite und nahezu ebenso regelmäßig konnte ich Denkanstöße und Hilfestellungen finden. Eine tolle Sache!

Nun habe ich eine Frage, die nach meinem Kenntnisstand (Suche) hier noch nicht behandelt wurde:

Wir überlegen für die automatische Nummerierung von bestimmten Datensätzen, eine alphanumerische (A-Z,0-9) Nummernserie zu verwenden. Die in Navision implementierte Serie beherrscht jedoch lediglich numerische Steigerung. Richtig?

Ist eine derartige alphanumerische Nummernserie machbar, bzw. mit welchem Umfang wäre dies verbunden?

Zielsetzung ist es mit lediglich 4 Stellen auszukommen. Alphanumerisch würden diese 4 Stellen rund 1,67 Mio. mögliche Nummern ergeben, was für unsere Anforderung ausreichend ist.

Bin gespannt auf Euer Feedback. Im Voraus vielen Dank.

Re: Alphanumerische Nummernserie in NAV 4.0

6. Oktober 2009 10:24

Hallo navoo,

zunächst ein "Herzlich Willkommen" hier im Forum (als aktives Mitglied) :-)

Interessantes Thema :-P
Ich kenne nur den Befehl INCSTR, dieser kann allerdings nur einen String um 1 hochzählen, deine Anforderung ist etwas "Spezieller".
Was du benötigst, wäre vermutlich eine neue Codeunit bzw. neue Funktion in der CU NummernSerienverwaltung.

Das währe meine Idee dazu (bin auf andere Lösungen gespannt)
Gegeben ist z.B. 'AAAA'
1. Die vier Ziffern müssten vermutlich in 4 einzelne Zeichen zerlegt werden (Text1 = 'A' - Text4 = 'A')
2. Per Übersetungstabelle (A = 1 ... Z = 26) eine Ziffer zuweisen (Text1Nr = '1' - Text4Nr = '1')
3. Die letzte Ziffer um 1 (eins) hochzählen (Text4Nr +=1)
4. Prüfen ob die Ziffer nicht größer 26 ist, wenn ja die nächste hochzählen, Prüfen usw.
5. Die Ziffern wieder zurückübersetzten anhand der Übersetztungstabelle
6. Die Buchstaben wieder zu einem String vereinen = AAAB

Ggf. müsste noch abgefangen werden, wenn mit einem Zeichen gestartet werden soll!

**Edit by Mikka**
Wenn die Nummern zu einer Zahl zusammen zusammen gefügt werden (z.B. 1111) und dann um eins hochgezählt werden, kann das "lästige" prüfen vereinfacht werden.
Nach dem Hochzählen, die Ziffer zerlegen (in einzelne!) und wie unter 5. weiter verfahren.

Re: Alphanumerische Nummernserie in NAV 4.0

6. Oktober 2009 10:25

Guten Morgen, navoo,

Dynamics NAV unterstützt alphanummerische Nummernserien nur dahingehend, dass es den nummerischen Anteil erhöht.
Der Alpha-Anteil bleibt dabei immer konstant.
Beispiel:
RE-09-4711 -> RE-09-4712
RE-09-4711VK -> RE-09-4712VK

Eine vollständig alphanummerische Erhöhung müsste individuell programmiert werden.
RE-09-4711VK -> RE-09-4711VL

Re: Alphanumerische Nummernserie in NAV 4.0

7. Oktober 2009 08:44

Guten Morgen und vielen Dank für den Empfang hier im Forum.

Vielen Dank auch für die Hinweise. Ich werde dem Vorschlag von Mikka folgend eine Umsetzung beginnen - das sollte so funktionieren.

Grüße,
navoo