PDA

Vollständige Version anzeigen : Rechnungsnummern


<Hurgha2>
03.01.2002, 07:48
Hi Folks
Mit diesem Code gelingt es mir meine dreigeteilten Rechnungsnummern in einem Formular zu erzeugen z.B. R 00010102 für Rechnungsnummer 1 aus Januar 2002.
Me!Rechnungsnummer = Left("Rechnungsnummer", 1) & Right(("0000" & Mid(DMax("[Rechnungsnummer]", "TBL_Angebotsaufnahme"), 2, 4) + 1), 4) _
& Format(Now, "mm") & Format(Now, "yy")
Me.txtRechnungsnummer.Requery
Mein Problem ist folgendes:
Die Rechnungsnummer soll für zwei verschiedene Formulare erzeugt werden und immer die nächst höhere Rechnungsnummer sein.
Me!Rechnungsnummer = Left("Rechnungsnummer", 1) & Right(("0000" & Mid(DMax("[Rechnungsnummer]", "TBL_Leistungsnachweis"), 2, 4) + 1), 4) _
& Format(Now, "mm") & Format(Now, "yy")
Me.txtRechnungsnummer.Requery
klappt auch für das zweite Formular. Wie füge ich beide zusammen in etwa so: höchste Nummer aus (Form1 oder Form2 +1). Dies gelingt mir nicht in meinen Code einzubringen. Wer kann mir helfen?

Jochum Rainer
03.01.2002, 10:06
Hallo!
Leg dir eine Tabelle an, in der du Nummernkreise verwaltest.
Beide Formulare greifen auf diese Tabelle zu und ziehen sich die aktuelle Nummer von dort.
Also Nummer aus Nummerntabelle ziehen, um eins erhöhen und wieder in Nummerntabelle wegschreiben. Die Nummerntabelle exclusiv öffnen um Konflikte bei Doppelzugriffen zu vermeiden.
Deshalb die Nummer erst beim Speichern der DS vergeben, da ansonsten die Tabelle eventuell "ewig" gesperrt werden muss.

Gruesse
Rainer Jochum

<Hurgha>
05.01.2002, 11:16
danke für deine Anregung,
habe folgende Lösung : da die Rechnungsnummer dreiteilig ist, habe ich gesagt; wenn der zweite Teil der Tabelle1 > zweiter Teil der Tabelle2 ist, dann soll die neu zu erzeugende Nummer zweiter Teil der Tabelle1 +1 sein. Dies geschieht mit der iif-Funktion.

Gruss
Hurgha