Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Mitarbeiter-Hierarchie in 1 Tabelle

Begonnen von Hpseel, Dezember 14, 2025, 00:10:34

⏪ vorheriges - nächstes ⏩

Beaker s.a.

@Hpseel

Die Frage stelle ich mir auch. Du brauchst dafür doch keinen JOIN, -
der ergibt sich in diesem Fall durch die Verknüpfung von UFo zu HFo
über die KostenstellenID (HFO) und den FK darauf im UFo.

Also HFo = Tabelle "Kostenstellen"; - was willst du da dazu "joinen"?

Das UFo bekommt die n:m-Tabelle als Datenherkunft, und auch hier wird
kein Join benötigt. Ein Kombi darin, das die MA-Tabelle als DS-Herkunft
hat und an den MA-FK gebunden ist.

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Beaker s.a.

Noch zur Ergänzung.

Durch die Verknüpfung wird bei Zuordnung eines MA (neuer DS im UFo) i.Ü.
der FK auf die Kostenstelle automatisch aus dem HFo übernommen.
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

FredFred

Hi,
für die Darstellung in den Formularen gibt es keinen Select .. JOIN... HF hat seine Datenherkunft und das Ufo hat die m:n-Tabelle als Datenherkunft.
Synchronisiert wird über "Verknüpfen von/nach" über HF/UF.

Insofern werden die Kostenstellen im HF angezeigt, und das UFO bleibt zunächst mal leer. Baust du da einen INNER-JOIN mit ein, werden natürlich nur vorhandene Kombinationen angezeigt. Je nachdem wo das (SELECT.. JOIN) einsetzt, kann man das auch über einen OUTER-JOIN beheben. Wie schon geschrieben, der Dummy ist überflüssig.

Edit: Gerade entdeckt, das wurde bereits gesagt.

Hpseel

Jetzt hat es doch etwas gedauert, alles zum Funktionieren zu bringen.

Es gibt jetzt das Hauptformular (HF), das auf der KOST-Tabelle basiert, und das Unterformular (UF) für die 3 Bearbeiter(-stufen), welches auf der m:n Tabelle ZUST basiert und als Datenblattansicht eingestellt ist.

Knobbi hat Recht: Man braucht keinen Join für das Unterformular. Der "Trick" ist folgender:

Das Unterformular basiert direkt auf der m:n Tabelle (ohne Join!), welche ja nur die Codes (=Zahlen) der Zuordnungen enthält. Die "Texte" (= Mitarbeiter-Namen aus der PERS-Tabelle), die man ja eigentlich im Unter-Formular zeigen möchte, kommen erst durch die Comboboxen (!) rein, die man dem Unterformular hinzufügen muss! Die Comboboxen im Unterformular erfüllen dann quasi den gleichen Zweck, den ein "Join" in einem Select für ein Einzelformular erfüllt...Trick 17...

Ein weiterer interessanter Effekt war auch das Funktionieren des "noch leeren HF und UF" zum Anlegen einer neuen Kostenstelle. Nachdem man die neue Kostenstelle im HF eingegeben hat, wird die "ID" sofort in dem Unterformular übernommen und man kann dort (mit den Comboboxen) die entsprechenden Bearbeiter nacheinander eintragen. Hierbei wird "automatisch" die m:n Tabelle gefüllt, ohne dass man etwas zusätzliches programmieren muss.
Man braucht auch kein "Refresh" oder "after Update" Ereignis etc. zu berücksichtigen. Wenn alles richtig eingestellt ist (speziell die Von/Nach Eintragungen in den UF-Eigenschaften), macht Access das automatisch.

Nochmals vielen Dank für eure Tipps!
Ich denke, auch andere Teilnehmer haben durch die Diskussion "dazugelernt".

Viele Grüße von HPS

Hpseel

P.S.
Habe gerade erst umgeblättert...
Vielen Dank natürlich nicht nur an Knobbi, sondern an alle, die einen Beitrag geschrieben haben !
Gruß HPS