Hallo und im Voraus schon mal ein herzliches Danke für Eure Hilfe
Ich bin gerade dabei, für unser Unternehmen das Inventar auf Basis einer DB aufzunehmen. Bis jetzt wurden diese Informationen nur in Excel gesammelt.
Mein Problem liegt darin, dass diese DB für 2 Firmen gestaltet sein muss.
Ich habe folgende Tabellen (vereinfacht)
Tbl_Firma
Firma Bezeichnung
111 ABC
222 XYZ
Tbl_Inventar
Firma Bezeichnung InventarNr
Eine "normale" fortlaufende Nummerierung ist ja nicht so schwer aber hier nun mein Problem:
Über "EIN" Formular wird die Anlage eingegeben.
Die "Firma" zB: 111, wird über ein Kombifeld ausgewählt. Die Bezeichung eingegeben und dann sollte die InventarNr so aussehen: 11100001, 1100002
Wie schaffe ich es, dass wenn zB. die Firma "222" ausgewählt wird, die InventarNr dann so aussieht "22200001, 22200002,
Der laufende Wert soll als in Abhängigkeit zur "Firma" stehen.
Die "111" oder "222" muss nicht unbedingt in der InventarNr ersichtlich sein, aber die laufende Nummerierung sollte für jede "Firma" getrennt erfolgen.
Es ist mir klar, dass unterschiedliche Formulare und Tabellen "(Für jede Firma getrennt) die einfachere Lösung wäre, aber vielleicht gibt es ja eine einfache Lösung
Nochmals Danke im Voraus für die Hilfe
In der Tabelle würde ich nicht die Inventarnummer speichern, sondern nur eine ermittelte laufende Nummer (als Long-Wert): Laut 1. Normalform gehören atomare Informationen in getrennte Felder.
Ermittlung der LfdNr bei Neuanlage über Formular:
If Me.Newrecord Then _
Me.txtLfdNr = Nz(DMax("LfdNr", "Tbl_Inventar", "Firma = " & Me.txtFirma), 0) + 1
' Firma hier als Fremdschlüssel (Long-Feld)
Die Inventarnummer wird dann in einer Abfrage erzeugt und darüber allen folgenden Auswertungen bereitgestellt:
SELECT Firma & Format(LfdNr, "00000") AS Inventarnummer
FROM Tbl_Inventar
MfGA
ebs
Wow
das ging ja schnell :D
hab ich gleich ausprobiert und es funktioniert.
Danke nochmals recht herzlich.
Ich war eigentlich auf dem richtigen Weg, aber hab den Wald vor lauter Bäumen nicht gesehen.