51 lines
2.2 KiB
Markdown
51 lines
2.2 KiB
Markdown
# Organization Chart
|
|
|
|
SPFx-1.4.1-WebPart für SharePoint Server Subscription Edition. Es erstellt aus dem SharePoint User Profile Service ein Organigramm, das ab einer frei konfigurierbaren Startperson rekursiv nach unten aufgebaut wird.
|
|
|
|
## Funktionen
|
|
|
|
- aktueller Benutzer oder konfigurierter Manager als Startpunkt
|
|
- Startperson über einen SharePoint-People-Picker direkt im WebPart auswählen
|
|
- rekursives Laden aller darunterliegenden Ebenen über `DirectReports`
|
|
- konfigurierbare maximale Tiefe und Personenzahl
|
|
- standardmäßig vollständig aufgeklappter Baum
|
|
- einzelne Zweige können auf- und zugeklappt werden
|
|
- Profilbild, Anzeigename, Position, Abteilung und optional Kontaktdaten
|
|
- Verlinkung auf die SharePoint-Profilseite
|
|
- kurzzeitiger In-Memory-Profilcache zur Reduzierung wiederholter REST-Aufrufe
|
|
- responsive Baumdarstellung mit SharePoint-Themefarben
|
|
- durchgehende Verbindungslinien und SharePoint-Chevrons zum Auf- und Zuklappen
|
|
|
|
## Datenquelle und Voraussetzungen
|
|
|
|
Das WebPart verwendet direkt:
|
|
|
|
```text
|
|
/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor(accountName=@v)
|
|
/_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser
|
|
```
|
|
|
|
Es benötigt keine Microsoft-Graph-Berechtigungen und keine zusätzliche SharePoint-Liste. Die User Profile Service Application muss eingerichtet sein. Benutzerprofile und insbesondere die Profilproperty `Manager` müssen aus dem Active Directory importiert werden, damit SharePoint `DirectReports` korrekt bereitstellt.
|
|
|
|
## Startperson
|
|
|
|
Im Bearbeitungsmodus der modernen Seite wird direkt oberhalb des Organigramms ein People Picker angezeigt. Dort kann die Startperson per Name oder E-Mail-Adresse gesucht werden. Das WebPart akzeptiert nur einen von SharePoint eindeutig aufgelösten Benutzer. Gespeichert werden der kanonische Login und der Accountname als Fallback.
|
|
|
|
Wird die Auswahl entfernt, verwendet das WebPart wieder den angemeldeten Benutzer. Im Anzeigemodus ist der People Picker nicht sichtbar.
|
|
|
|
## Build-Umgebung
|
|
|
|
- Node.js 8.17.0
|
|
- npm 6.13.4
|
|
- SharePoint Framework 1.4.1
|
|
|
|
```powershell
|
|
npm install
|
|
npm test
|
|
gulp clean
|
|
gulp bundle --ship
|
|
gulp package-solution --ship
|
|
```
|
|
|
|
Das Paket wird unter `sharepoint/solution/organization-chart-webpart.sppkg` erzeugt.
|