Hierarchie Abbildung

antoschka

New Member
Hallo allerseits,

habe noch ein zweites Problem, wofür ich nur eine unbefriedigende Lösung habe und würde deshalb hier gern nach Rat fragen.

Es geht um die Abbildung einer hierarchischen Organisationsstruktur. An sich ziemlich einfach.
Tabelle 1: OrgEinheiten (ID, Bezeichnung etc)
Tabelle 2: Hierarchie (SuperOrgID, SubOrgID)

Jedoch kann eine OrgEinheit mehrere Kinder und (!) Eltern haben. Dann reicht der o.g. nicht, da man zwar die OrgHierarchie aufspannen kann, aber eine mehrfach verwenderen Orgeinheit nicht eindeutig identifizieren kann. Das ganz ist also eindeutig aber nicht eineindeutig.
Bsp.:
- OrgEinheit-Tabelle
Code:
ID	Bezeichnung
1	Unternehen
2	Abteilung 1
3	Abteilung 2
4	Team 
5	Person
-HierarchieTabelle
Code:
SuperID	SubId
1		2
1		3
2		4
3		4
4		5
In diesem Fall ergibt sich der Hierarchiebaum
Code:
Unternehmen
	Abteilung 1
		Team 
			Person
	Abteilung 2
		Team 
			Person
Die Person P arbeitet in zwei Abteilungen. Leider kann ich mit diesem DB-Schema nicht unterscheiden ob ich die Person als Mitarbeiter in Abteilung 1 oder als Mitarbeiter in Abteilung 2 meine. D.h. wenn ich Eigenschaften für diese Person definieren möchte die abteilungsspezifisch sind scheint es mir nicht möglich. Hässlicher workarounds, die mir einfielen:
- neue HierarchieTabelle1 (HierarchID = Schlüssel)
Code:
HierarchID	OrgID		VorgrängerOrgIDs
1		1		NULL
2		2		1
3		3		1
4		4		2;1
5		4		3;1
6		5		4;2;1
7		5		4;3;1
- neue HierarchieTabelle2 (HierarchID = Schlüssel)
Code:
HierarchID	OrgID		VorgrängerHierarchIDs
1		1		NULL
2		2		1
3		3		1
4		4		2
5		4		3
6		5		4
7		5		5
Fällt Euch etwas besseres ein? Oder gibt es eine schicke Standardlösung dafür.

Besten Dank schon einmal.

antoschka
 
Last edited by a moderator:
Back
Top