Hallo zusammen,
Ich suche ein Skript, mit dem ich leere Ordner in den Organisationseinheiten, Kostenstellen und Lokationen löschen kann - also sobald keine Personen oder sonstiges mehr damit verknüpft sind (Personen und alles weitere aktualisieren wir nächtlich per Importdefinitionen). Hat sowas schon mal jemand gemacht oder eine Idee wie wir das am besten anfangen? Aufgrund unserer Konzernorganisation haben wir über 1500 OUs, da wäre manuell zu aufwändig, zumal wir die Änderungen nur über die Benutzerobjekte mitbekommen.
Für jegliche Tips bin ich dankbar, ansonsten muss ich mich mal auf die Suche machen wie ich das rausbekomme in welcher Tabelle was steht...
Leere Orgunits, Lokationen und Kostenstellen löschen -Gelöst
Leere Orgunits, Lokationen und Kostenstellen löschen -Gelöst
Last edited by jmaku on 10. Dec 2015, 20:55, edited 1 time in total.
Re: Leere Orgunits, Lokationen und Kostenstellen löschen
Soll das denn nun nur einmalig passieren oder passiert sowas ständig?
Vom Verständnis her sollten sich Stammdaten dieser Art doch eigentlich relativ selten ändern, da es hier um organisatorische Dinge geht.
Jedenfalls...Auf Anhieb wären meinerseits 2 Ansätze denkbar:
1. Voll Automatisiert via Workflow und Job oder Aktion:
Ein Workflow der Regelmäßig oder bei Aufruf alle OUs (CCs, LOCs etc.) durchgeht und sie löscht falls keine Verknüpfungen vorhanden sind.
2. Manuelle Hilfe über die Tabellenansicht:
In der Tabelle für OUs (CCs, LOCs, etc.) wird eine Spalte mit einer SUBQUERY hinzugefügt, die die Anzahl sämtlicher Verknüpfter Objekte anzeigt. Auf die kann man dann Filtern und alle Einträge mit 0 löschen.
Ist meiner Meinung nach die Lösung mit der meisten Kontrolle, da beim Löschen ebenfalls nochmal gefragt wird, was mit verknüpften Objekten passieren soll, falls gelöscht wird.
Vom Verständnis her sollten sich Stammdaten dieser Art doch eigentlich relativ selten ändern, da es hier um organisatorische Dinge geht.
Jedenfalls...Auf Anhieb wären meinerseits 2 Ansätze denkbar:
1. Voll Automatisiert via Workflow und Job oder Aktion:
Ein Workflow der Regelmäßig oder bei Aufruf alle OUs (CCs, LOCs etc.) durchgeht und sie löscht falls keine Verknüpfungen vorhanden sind.
2. Manuelle Hilfe über die Tabellenansicht:
In der Tabelle für OUs (CCs, LOCs, etc.) wird eine Spalte mit einer SUBQUERY hinzugefügt, die die Anzahl sämtlicher Verknüpfter Objekte anzeigt. Auf die kann man dann Filtern und alle Einträge mit 0 löschen.
Ist meiner Meinung nach die Lösung mit der meisten Kontrolle, da beim Löschen ebenfalls nochmal gefragt wird, was mit verknüpften Objekten passieren soll, falls gelöscht wird.
Tria-media - IT Solutions
Re: Leere Orgunits, Lokationen und Kostenstellen löschen
Das wird ab und zu mal vorkommen, kann aber manuell erledigt werden - die zweite Lösung klingt schon mal ganz gut, die Subquery wäre wahrscheinlich schon das, was ich auch als SQL-Abfrage hätte laufen lassen.
Wo finde denn die Anzahl der verknüpften Objekte?
Wo finde denn die Anzahl der verknüpften Objekte?
Re: Leere Orgunits, Lokationen und Kostenstellen löschen
Am Beispiel der Organisationseinheiten wäre folgendes die Spaltendefinition:
Einfach entsprechend CNT.OU durch CNT.CostCenter oder CNT.Location ersetzen.
Code: Select all
=SUBQUERY(SPSCommonClassBase as CNT, COUNT(all,CNT.*), CNT.OU = base.ID)
Tria-media - IT Solutions
Re: Leere Orgunits, Lokationen und Kostenstellen löschen
Hallo,
funktioniert... super, vielen Dank!
funktioniert... super, vielen Dank!
Who is online
Users browsing this forum: No registered users and 5 guests