MSAccess---> Ausgelesene [Username]-Nummer in Original-Namen umwandeln

Thomas14547

Grünschnabel
Hallo an alle DB-Fans ;-),

ich habe diese Frage schon in mehreren Foren gestellt und noch keine erschöpfende Antwort bekommen:
.............
In einer MS ACCESS DB lasse ich mir mit Hilfe der Funktion " =Umgebung("Username")" den Datensatz-Autor anzeigen.
Da in unserem Netzwerk alle Mitarbeiter mit ihrer PS-Nummer hinterlegt sind, wird mir in der Spalte natürlich auch immer nur diese PS-Nummer hinterlegt.
Jetzt zu meiner Frage: Ist es möglich mit Hilfe dieser Spalte [DS-Autor] den realen Namen anzeigen zulassen.
---------
Eine Tabelle [NL-Nutzer] mit die PS-Nummern [Autor-Nr] und den jeweiligen Autoren-Namen [Autor-Name] habe ich bereits angelegt.
---------
Ich bekommen es aber nicht hin, der Spalte [DS-Autor] oder einer anderen Spalte, in der Tabelle [Erfassung] zu sagen:
Wenn in Spalte [DS-Autor] die PS-Nummer "0815" steht, dann suche in Tabelle [NL-Nutzer] in der Spalte [Autor-Nr] die "0815" und
nehme aus der Tabelle [NL-Nutzer] aus der Spalte [Autor-Name] den Namen "Hr.Mustermann" und
schreibe diesen in die Tabelle [Erfassung] in Spalte [DS-Autor] oder in eine andere Spalte.
-----------
Auf die Tabelle [Erfassung] greife ich mittels unterschiedlicher Abfrage-Tabellen zu,
diese Abfrage-Tabellen zeigen mir fehlerhafte Datensätze an und deren DS-Autoren, aber eben nur mit der PS-Nummer ;-(.
-----------
In einem Forum habe ich folgenden Tipp bekommen, der aber letzendlich auch keine abschliessende Lösung ;-(.
" Das Auslesen geht mit einer Abfrage (Select) z.B.:

SELECT NL-Nutzer.Autor-Name FROM NL-Nutzer INNER JOIN NL-Nutzer.Autor-Nr = Erfassung.DS-Autor

Damit wird aber noch nichts in die Tabelle geschrieben. Dafür bräuchtest du wohl ein Makro....."
----------
Mit dieser Antwort kann ich nicht viel anfangen, da ich nicht weiss:
Wo ich die Auslese-Abfrage "hinschreiben" soll?
-----
In der Hoffnung das mir hier jemand helfen kann, Danke ich schon mal jetzt ;-)

Gruß Thomas ;-))
 
Hallo Thomas


Hallo an alle DB-Fans ;-),
-----------
Auf die Tabelle [Erfassung] greife ich mittels unterschiedlicher Abfrage-Tabellen zu,
diese Abfrage-Tabellen zeigen mir fehlerhafte Datensätze an und deren DS-Autoren, aber eben nur mit der PS-Nummer ;-(.
-----------
Gruß Thomas ;-))

Diese unterschiedlichen Abfragen musst du jetzt anpassen (so wie es dein Tipp dir geraten hat), damit statt der PS-Nummer der Name erscheint.

Wenn du mal eine dieser Abfragen posten würdest, könnten wir dir ein Beispiel machen, damit du dann die anderen Abfragen dementspechend anpassen kannst.

Grüsse

Tecla
 
Hallo Tecla,

entschuldige das ich solange für meine Antwort gebraucht habe, in der Hoffnung du kannst mir doch noch helfen melde ich mich noch mal.

Hier die von dir gewünschte Abfrage in Form der SQL-Ansicht.
-------------
SELECT Erfassung.ZUNR, Erfassung.Dezernat, Erfassung.Team, Erfassung.Erdate, Erfassung.Bewilligung, Erfassung.Ablehnung, Erfassung.Aenderung, Erfassung.DSErstellung, Erfassung.DSAenderung, Erfassung.DSAutor
FROM Erfassung
WHERE (((Erfassung.Erdate) Is Null) AND ((Erfassung.Bewilligung)<>"Leer"));
-------------
In der Spalte [Erfassung.DSAutor] wird die Personalnummer des Autors abgelegt,
z.B. "0815", der Mitarbeiter heißt aber Herr Mustermann.
Eine Tabelle die, die "0815" und Herrn Mustermann zusammenbringen habe ich schon angelegt, die heißt [NL-Nutzer] :)
------------
Wie bekomme ich es hin, das aufgrund der vorhandenen "0815" in der Spalte[Erfassung.DSAutor], in einer andere Spalte z.B. [DSAutorName] der reale Name "Herr Mustermann" abgelegt wird :confused:
------------

Mit sonnigen herbstlichen Grüßen

Thomas
 
Hallo Thomas

Jetzt gehts darum eine JOIN zu machen, du verknüpfst jetzt also die beiden Tabellen folgendermassen:

SELECT Erfassung.ZUNR, Erfassung.Dezernat, Erfassung.Team, Erfassung.Erdate, Erfassung.Bewilligung, Erfassung.Ablehnung, Erfassung.Aenderung, Erfassung.DSErstellung, Erfassung.DSAenderung, NL-Nutzer.Mitarbeiter
FROM Erfassung, NL-Nutzer
WHERE Erfassung.Erdate Is Null
AND Erfassung.Bewilligung <> "Leer"
AND Erfassung.DSAutor = NL-Nutzer.DSAutor;

Die Klammern hab ich mal zur besseren Übersicht weggelassen.

Grüsse, Tecla

EDIT sehe gerade, dass deine Spalten in der Tabell NL-Nutzer anders heisse.
Also so:

SELECT Erfassung.ZUNR, Erfassung.Dezernat, Erfassung.Team, Erfassung.Erdate, Erfassung.Bewilligung, Erfassung.Ablehnung, Erfassung.Aenderung, Erfassung.DSErstellung, Erfassung.DSAenderung, NL-Nutzer.Autor-Name
FROM Erfassung, NL-Nutzer
WHERE Erfassung.Erdate Is Null
AND Erfassung.Bewilligung <> "Leer"
AND Erfassung.DSAutor = NL-Nutzer.Autor-Nr;
 
Zuletzt bearbeitet:
Zurück