Hallo,
ich bräuchte für meine Firma ein Datenbankentwurf für eine extrem abgespeckte Version eines CRM Systems. Die Struktur im Betrieb ist wie folgendes Schaubild aufgebaut:
Die Betriebsleitung hat einblick in ALLE tätigkeite, egal ob von Regionalleiter, oder Vertriebsleiter etc.
Die Regionalleiter haben natürlich nur einblick in die Sachen die dennen Untergeordnet sind und nicht die, des anderen. Und so geht das halt immer weiter das die Übergeordneten immer den untergeordneten "in die Karten" gucken können aber nach oben nicht.
Desweiteren kann es vorkommen das Zwischen den einzelnen Ebenen noch weitere Ebenen erstellt werden können:
Z.b. kommt zwischen dem Regionalleiter und dem Filialleiter auf der Linken seite ein weiterer Vertriebsleiter.
Leider kann ich jetzt noch nicht sagen in wie fern das passieren wird, aber das Tool soll diese Funktionalität von Anfang an bieten, neue Ebenen "Zwischen zuschieben"
Ich weis nicht wie man das am besten in einer MySQL datenbank löst, ich habe schon 2 Ansätze wobei mir diese nicht so gut gefallen:
1. Es gibt eine "Rechtetabelle" die wie folgt aussieht:
Kurze Erklärung: ID_Leiter ist z.B. der Regionsleiter mit der ID 3 und darf auf Verkäufer mit der ID: 10, 14, 21 und 11 gucken.
Das Problem ist, wenn ich 100 Verkäufer anlege, mit x Leitern etc, wird diese Tabelle riesig und ich denke die Performance der Abfragen rasst in den Keller...
2. Es gibt eine Rechtetabelle die mit Strings (als Array) arbeitet:
Aber ich habe gehört das diese Art nicht gut ist und man diese Methode vermeiden soll...
Ich hoffe ich habe es verständlich ausgedrückt. Würde mich über Hilfe freuen.
ich bräuchte für meine Firma ein Datenbankentwurf für eine extrem abgespeckte Version eines CRM Systems. Die Struktur im Betrieb ist wie folgendes Schaubild aufgebaut:
Die Betriebsleitung hat einblick in ALLE tätigkeite, egal ob von Regionalleiter, oder Vertriebsleiter etc.
Die Regionalleiter haben natürlich nur einblick in die Sachen die dennen Untergeordnet sind und nicht die, des anderen. Und so geht das halt immer weiter das die Übergeordneten immer den untergeordneten "in die Karten" gucken können aber nach oben nicht.
Desweiteren kann es vorkommen das Zwischen den einzelnen Ebenen noch weitere Ebenen erstellt werden können:
Z.b. kommt zwischen dem Regionalleiter und dem Filialleiter auf der Linken seite ein weiterer Vertriebsleiter.
Leider kann ich jetzt noch nicht sagen in wie fern das passieren wird, aber das Tool soll diese Funktionalität von Anfang an bieten, neue Ebenen "Zwischen zuschieben"
Ich weis nicht wie man das am besten in einer MySQL datenbank löst, ich habe schon 2 Ansätze wobei mir diese nicht so gut gefallen:
1. Es gibt eine "Rechtetabelle" die wie folgt aussieht:
Code:
ID | ID_Leit | ID_Verk ---------------------- 01 | 03 | 10 02 | 03 | 14 03 | 03 | 21 04 | 04 | 11 ...
Das Problem ist, wenn ich 100 Verkäufer anlege, mit x Leitern etc, wird diese Tabelle riesig und ich denke die Performance der Abfragen rasst in den Keller...
2. Es gibt eine Rechtetabelle die mit Strings (als Array) arbeitet:
Code:
ID | ID_Leit | ID_Verk -------------------------- 01 | 03 | 10,14,21 04 | 04 | 11 ...
Ich hoffe ich habe es verständlich ausgedrückt. Würde mich über Hilfe freuen.
Comment