Laufendende Nummer im Bericht
Hallo Gemeinschaft,
ich habe in einer Tabelle Reservierungen Datensätze - wenn eine Reservierung - - also der Abreisetag - länger als eine Woche her ist, dann wird in manchen Fällen eine Gutschrift geschrieben, für den Eigentümer einer Ferienimmobilie - nun brauche ich für die Erstellung dieser Abrechnung eine laufende Nummer - habe dafür eine weitere Tabelle angelegt tblGTNummer - dort würde vor der Erstellung der Abrechnung die Höchste Nummer mir holen und diese plus 1 in die Abrechnung schreiben wollen - weiss nur nicht, wie ich die Nummer in den Bericht bekomme- weil auch nicht jeder Datensatz eine Gutschrift bekommt - sonst hätte ich die id genommen
ich habe in einer Tabelle Reservierungen Datensätze - wenn eine Reservierung - - also der Abreisetag - länger als eine Woche her ist, dann wird in manchen Fällen eine Gutschrift geschrieben, für den Eigentümer einer Ferienimmobilie - nun brauche ich für die Erstellung dieser Abrechnung eine laufende Nummer - habe dafür eine weitere Tabelle angelegt tblGTNummer - dort würde vor der Erstellung der Abrechnung die Höchste Nummer mir holen und diese plus 1 in die Abrechnung schreiben wollen - weiss nur nicht, wie ich die Nummer in den Bericht bekomme- weil auch nicht jeder Datensatz eine Gutschrift bekommt - sonst hätte ich die id genommen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 2092968090
Url: https://administrator.de/forum/laufendende-nummer-im-bericht-2092968090.html
Ausgedruckt am: 21.04.2025 um 16:04 Uhr
20 Kommentare
Neuester Kommentar
Moin,
recht dürftig deine Infos.
ich gehe mal davon aus, dass du einen MS SQL-Server "unten drunter" nutzt und deine Belege via SQL-Statements mit Daten gefüllt werden.
Problem hierbei:
Du wirst so ohne weitere NIE die Nummer in deiner tblGTNummer erhöhen.
Mit was werden deine Buchungen verwaltet, also mit welchem Programm?
Kannst du Funktionen erstellen und nutzen?
Falls Ja müsstest du eine Funktion etablieren die folgendes macht (logischer Ansatz)
Du musst natürlich sicherstellen, dass in den paar Millisekunden kein anderer eine Gutschrift erzeugen will.
Gruß
em-pie
recht dürftig deine Infos.
ich gehe mal davon aus, dass du einen MS SQL-Server "unten drunter" nutzt und deine Belege via SQL-Statements mit Daten gefüllt werden.
SELECT
...
, [BELEGNR] = (Select TOP 1 (tblGTNummer.Nummer + 1) from tblGTNummer order by NUMMER desc)
, ...
FROM
Gutschriften
WHERE
dies = 'jenes'
Problem hierbei:
Du wirst so ohne weitere NIE die Nummer in deiner tblGTNummer erhöhen.
Mit was werden deine Buchungen verwaltet, also mit welchem Programm?
Kannst du Funktionen erstellen und nutzen?
Falls Ja müsstest du eine Funktion etablieren die folgendes macht (logischer Ansatz)
Hole die letzte Nummer aus tblGTNummer
Erhöhe diese Nummer um einen
Schreibe den neuen Wert in die tblGTNummer
gebe den neuen Wert zurück
Du musst natürlich sicherstellen, dass in den paar Millisekunden kein anderer eine Gutschrift erzeugen will.
Gruß
em-pie
dann ist das doch eine popelige Aufgabe, welche ich dir oben schon geschrieben habe
und die Belegnummer speicherst du halt fest ab. der nächste Beleg wird die neue Nummer ermitteln , um 1 erhöhen, apspeichern und gut.
SELECT
...
, [BELEGNR] = (Select TOP 1 (tblGTNummer.Nummer + 1) from tblGTNummer order by NUMMER desc)
, ...
FROM
Gutschriften
WHERE
dies = 'jenes'
https://www.techonthenet.com/access/functions/domain/dmax.php
so müsste es auch mit DSLookup funktionieren.
Und noch mal: poste doch endlich mal Screenshots (anonymisiert)
so müsste es auch mit DSLookup funktionieren.
Und noch mal: poste doch endlich mal Screenshots (anonymisiert)

Falsches Trennzeichen ...
=DomErsterWert("[Wert]";"Tabelle1";"[ID]=1")

Wieso dann alle 2 Minuten ein überflüssiger Post?, Einfach mal in sich gehen und etwas länger lesen dann kommt das von ganz alleine ...
RTFM!
DMin-Funktion und DMax-Funktion
- wie würdest du es machen, um den höchsten wert auszulesen
=DomMax("[Wert]";"Tabelle1")
DMin-Funktion und DMax-Funktion