Benutzer, Gruppen und Benutzer in Gruppen in SharePoint 2010/2013 anlegen

Wird eine SharePoint-Instanz neu ausgerollt, so ist es häufig notwendig in einem einzigen Arbeitsvorgang eine große Menge an Benutzern anzulegen, ebenso wie Benutzergruppen und anschließend die Benutzer den neuen oder bestehenden SharePoint-Gruppen zuzuweisen.
Dies manuell zu erledigen kostet Zeit und viele Mausklicks. Mit einem kleinen Powershell-Script und einer CSV-Datei geht es schneller und nervenschonender. Benutzer, Gruppen und Benutzer in Gruppen in SharePoint 2010/2013 anlegen weiterlesen

SharePoint 2010/2013 Liste mit AD-Usern füllen

Das könnte so gehen….

————————————————————————————

Import-Module ActiveDirectory

$AllUsers=Get-ADUser -Filter * -SearchBase „DC=CONTOSO,DC=COM“ -Properties *

Add-PSSnapin Microsoft.SharePoint.PowerShell -EA SilentlyContinue

#Variablen zum adressieren der Liste
$webURL = „http://intranet.contoso.com
$listName = „ADUsers“ 
#Webseite adressieren
$web = Get-SPWeb $webURL 
#Liste adressieren
$list = $web.Lists[$listName]

foreach ($User in $AllUsers) {
    foreach ($item in $list.items) {
        if ($item[„Title“] -eq $User.SID) {
            $item[„Name“] = $User.DisplayName
            $item[„EMail“] = $User.EmailAddress
            $item[„OfficePhone“] = $User.OfficePhone
            $item.update()
            $Flag =“gefunden“
        }
    }
    if ($Flag -ne „gefunden“) {  
            #Neuen Eintrag erstellen
            $newItem = $list.Items.Add()  
            #Eigenschaften ins ListItem füllen
            $newItem[„Title“] = $User.SID
            $newItem[„Name“] = $User.DisplayName
            $newItem[„EMail“] = $User.EmailAddress
            $newItem[„OfficePhone“] = $User.OfficePhone
            #Listenelement schreiben
            $newItem.Update()
    }
    $Flag=““
}

—————————————————–

Es wird über die SID geprüft, ob bereits ein Eintrag vorhanden ist. Falls ja, wird der Eintrag aktualisiert, falls nein, wird ein neuer erstellt.

Die Liste muss vorhanden sein und die entsprechenden Spalten enthalten. Vor dem ersten Durchlauf muss mindestens EIN Eintrag in der Liste vorhanden sein. Dieser muss einmal von Hand eingetragen werden und kann nach dem ersten Durchlauf gelöscht werden.

 

Fehler bei Import im SharePoint 2007/2010 „FileValue“ not found

​Lange gekämpft, aber letztendlich doch gewonnen…..

Benutzt man den ContentDeployment Wizard oder die Import/Export Funktionen vom STSAD-Tool, um eine Seite oder eine Seite mit einer Bibliothek oder nur eine Bibliothek zu exportieren und woanders zu importieren, kann sein, dass man auf den „blöden“ Fehler „Fatal Error irgendein blablubblabla in System.SharePoint.Haumichblau Member ‚FileValue‘ was not found“ erhält. Danach noch lange ausschweifende weiteren Dünnsinn, den Microsoft für wertvolle Fehlerinformationen hält.

Die Ursache ist einfach: Irgendwo in der Import-Datei ist eine Dokumentenbibliothek enthalten bei der Versionierung aktiviert ist. Mindestens ein Dokument hat mindestens eine Dokumentenversion die eine Größe von 0 Bytes hat.

Das kann passieren, wenn man einen Upload abgebochen hat oder sich sonstwie dummerhaftig angestellt hat.

Für MOSS 2007 gibts dafür ein Hotfix http://support.microsoft.com/kb/2276469/de

Für Sp2010 gilt: Powershell benutzen, nicht STSADM.

Vielleicht ist es jemandem nützlich.

Probleme mit Windows-Explorer-Ansicht unter Sharepoint (öffnet nicht)

Das Problem:

Unter SharePoint 2007 oder 2010 lassen sich Dokumentbibliotheken nicht mehr in der Windows-Explorer-Ansicht (Aktionen- , oder Bibliotheksmenü) öffnen.

Unter MOSS 2007 geschieht schlichtweg gar nichts, unter SharePoint 2010 erscheint eine Fehlermeldung, dass auf die Dateien des Ordners nicht zugeriffen werden kann.

Als Server Betriebssystem wird Windows-Server 2008 (R2) 64 verwendet. Probleme mit Windows-Explorer-Ansicht unter Sharepoint (öffnet nicht) weiterlesen

Migration MOSS 2007 nach Sharepoint 2010 Schrittweise (Step by Step)

Die Migration von MOSS 2007 nach Sharepoint 2010 habe ich im folgenden als kleine „Checkliste“ sowohl als Mindmap, als auch als Word- und OpenOffice Dokument bereitgestellt.

Anhand der MindMap-Grafik kann die Migration schrittweise abgearbeitet werden. Die beigefügten Dokumente können sowohl als Checkliste, als auch als Dokumentationsgrundlage für eine Migration verwendet werden.

Mindmap Migration MOSS 2007 -> SP 2010

Open Office Dokument

Word Dokument

Die beiden Dokumente liegen als ZIP-Dateien vor.

Die Bilddatei im Browser öffnen und mit der Zoom-Funktion (STRG-Mausrad) auf die gewünschte Ansichtsgröße skalieren.

Backup-Script (Powershell) für Sp2010 aller SiteCollections und Websites einer Web-Application

Die Aufgabe:

Backup aller SiteCollections einer Web-Application und Export aller einzelnen Unterwebsites der SiteCollection.

Zweck:

Schnelles wieder herstellen von einzelnen Webseiten und SiteCollections wird damit möglich. Es muss nicht umständlich in eine andere Datenbank wieder hergestellt werden, um von dort auf die benötigten Webseiten zu exportieren und dann wieder in die produktive Umgebung zu importieren.

Dazu wird ein Powershell-Script verwendet, welches auch in die Schedules-Tasks unter Windows-Server eingebunden werden kann:

# Das Script erwartet 2 Argumente beim Aufruf
# .\backup.ps1 <WebApplicationUrl> <PfadZumBackUpVerzeichnis>

# Einlesen des Powershell-Snapin für Microsoft Office SharePoint, wenn es nicht schon geladen ist
#
if ( (Get-PSSnapin -Name ‚Microsoft.SharePoint.PowerShell‘ -ErrorAction SilentlyContinue) -eq $null) {
Add-PSSnapin -Name ‚Microsoft.SharePoint.PowerShell‘
}

# Übernehmen des Kommandozeilen-Arguments für die Web-Application[0] und den Backup-Pfad[1]
#
$siteUrl = $args[0]
$pfad = $args[1]

# Instanziieren des Web-Application Objekts
#
$rootSite = New-Object Microsoft.SharePoint.SPSite($siteUrl)
$spWebApp = $rootSite.WebApplication

# Durchlaufen aller SiteCollections in der Web-Application und Anlegen eines Backups mit dem Namen
# der obersten Website der SiteCollection (.bak) im Pfad, der als zweites Argument an das Script übergeben wurde

foreach($site in $spWebApp.Sites)

 $web = $site.OpenWeb()
 $Datei =$pfad + $web.Title + „.bak“ # erhaschen des Titels der Website auf oberster Ebene der SiteCollection
 write-host $Datei
 Backup-SPsite -Identity $site.url -Path $Datei –Force

 # Durchlaufen aller Webseiten der Site-Collection und Export dieser Webseiten
 #
 foreach($website in $site.Allwebs)
 {
  # Der Name der exportierten Webseite wird zusammengesetz aus <<Name der SiteCollection>-<Name der Website>>.exp
  #
  $Datei = $pfad + $web.Title + „-“ + $website.Title + „.exp“ # erhaschen des Titels der Website die als nächtes exportiert wird
  Export-SPweb -Identity $website.url -Path $Datei
 }
 $site.dispose()
}

# Anmerkungen
# Aufruf des Scripts:
# Vom CMD-Prompt oder aus einem Scheduled Task: powershell <pfad>\backup.ps1 <WebApplicationUrl> <PfadZumBackUpVerzeichnis>
#
# Wiederherstellen von SiteCollections
# Restore-SPSite –Identity http://servername/your/directory -Path <Pfad>\NameDerBackupDatei.bak –Force
#
# Wiederherstellen von WebSites
# Import-SPWeb –Identity http://servername/your/directory -Path <pfad>\NameDerBackupDatei.exp –Force -IncludeUserSecurity

Ändern der Sprache in der SharePoint Zentraladministration (2010/2007)

Um die Spracheinstellungen für die SharePoint Zentraladministration zu ändern, kann man einen einfachen Trick benutzen.

Vorab sei jedoch erwähnt, dass dieses Vorgehen nicht von Microsoft unterstützt wird, da es eine direkte Manipulation der Datenbank beinhaltet. Ich empfehle dies auch in Produktivumgebungen nicht zu tun, da eventuelle Support-Ansprüche an Microsoft verloren gehen könnten.

Leider ist es nicht möglich die SharePoint-Zentraladministration (SP2010 und MOSS 2007) nachträglich mit unterstützter Funktionalität auf eine andere Sprache umzustellen. Dennoch ist dies mit Hilfe einer kleinen Manipulation machbar.

Ändern der Sprache in der SharePoint Zentraladministration (2010/2007) weiterlesen

Was ist neu in SharePoint 2010 Foundation (Serie) – Teil 3

 

Beziehungen zwischen Listen (Relationen)

In den vorangegangenen SharePoint Versionen gab es echte Relationen zwischen verschiedenen Listen einer Webseite nicht, oder nur in der Form, dass aus einer Liste Nachschlagespalten auf eine andere Liste erstellt werden konnten.

In SharePoint 2010 kommt nun eine „echte“ Beziehung zwischen Listen zu Stande, wenn eine Nachschlagespalte auf eine andere Liste erstellt wird. Durch die Herstellung einer Beziehung zwischen Listen kann gleichzeitig eine referentielle Integritätsprüfung konfiguriert werden, die dafür sorgt, dass abhängige Listeneinträge in untergeordneten Listen gelöscht werden, wenn der übergeordnete Listeneintrag gelöscht wird.

Dies sorgt für deutlich mehr Konsistenz in miteinander verbundenen Listen und kann dazu genutzt werden tatsächlich Abhängigkeiten darzustellen.

Beispiel:

Verbundene Listen sollen dazu genutzt werden, ein Projekt mit Sammelvorgängen und Untervorgängen darzustellen. Dazu wird eine Aufgaben-Liste mit einer zweiten Liste über ein Nachschlagefeld verknüpft.

 

Abbildung 8 und 9:
Konfiguration verknüpfter Listen über ein Nachschlagefeld mit Löschweitergabe

Abblidung 8

Abblidung 9

 

n diesem Beispiel werden die Listen über eine neu angelegte Spalte namens „Vorgang“ verknüpft. Somit ist die Liste Unteraufgaben mit den Projektaufgaben verbunden und wenn eine Projektaufgabe gelöscht wird, so werden alle auf sie bezogenen Unteraufgaben ebenfalls gelöscht.

Was ist neu in SharePoint 2010 Foundation (Serie) – Teil 2

Arbeiten mit großen Listen

In einer Collaboration-Umgebung kommt es schnell dazu, dass Listen sehr schnell wachsen und schon sehr bald viele Einträge (Listenelemente) beinhalten. In bisherigen Versionen des SharePoint gab es hier gewisse Einschränkungen und Empfehlungen von Seiten Microsoft, wie mit Listen mit mehreren Tausend Einträgen umgegangen werden sollte. Schnell stieß man hier auf Performance Einschränkungen oder Empfehlungen, die dann eine umfangreiche Ordnerstruktur vorsehen mussten, um große Listen performant und bedienbar zu halten.

Um dies zu vermeiden, wurden Konfigurationseinstellungen auf Web-Anwendungsebene neu hinzugefügt, die es dem Administrator ermöglichen zum Beispiel das Aufrufen von Listenansichten, die mehr als eine definierte Anzahl von Elementen enthalten, zu verhindern. Damit werden von vorn herein Performance-Probleme und übermäßige Ressourcen Belastung der Server und Datenbank verhindert.

Auch für Entwickler interessant

Auch das Objektmodell bietet dem SharePoint-Entwickler an dieser Stelle neue Methoden, die der Entstehung von Ressourcen-Problemen vorbeugen. Hier wurden Methoden auf Listen und Bibliotheksebene hinzugefügt, die bisherige bekannte Methoden ersetzen und speziell für das Handling von großen Listen gedacht sind. Hierzu zählen:

  • SPList.ItemCount

  • SPList.AddItem

  • SPList.GetItemByID

und weitere mehr.

Abbildung 7:
Ressourcen-Steuerung für große Listen in der Zentraladministration für eine Web-Anwendung

Abbildung 7

Was ist neu in SharePoint 2010 Foundation (Serie) – Teil 1

 Schon seit Erscheinen der ersten SharePoint Versionen wurde zwischen einer lizenzfreien Version und einer Server-Version unterschieden. Hier sind die Bezeichnungen SharePoint Team Services (STS), Windows SharePoint Services (WSS) und SharePoint Portal Server 2003 (SPS), sowie Microsoft Office SharePoint Server 2007 (MOSS) die bislang geläufigsten Bezeichnungen für die verfügbaren Versionen.In der Version 2010 lauten die offiziellen Microsoft Bezeichnungen SharePoint Server 2010 und SharePoint 2010 Foundation. Auch hier wird zwischen den Basis Diensten und Funktionen sowie den darüber zusätzlich verfügbaren Server Diensten und Funktionen unterschieden. Die SharePoint Foundation 2010 bildet sozusagen den Grundstock an Funktionen, mit denen SharePoint aufwartet.
Was ist neu in SharePoint 2010 Foundation (Serie) – Teil 1 weiterlesen